mysqli

mysql.php

<?php
require('common_function.php');

$db_host='127.0.0.1';
$db_database='easytrade1';
$db_username='root';
$db_password='admin';
$conn=mysqli_connect($db_host,$db_username,$db_password);//连接到数据库
if($conn == false){die("could not connect to the database:</br>".mysqli_error($conn));}//诊断连接错误

mysqli_query($conn, "set names 'utf8'");//编码转化

if(!mysqli_select_db($conn, $db_database)){ //选择数据库
    die("could not to the database</br>".mysqli_error($conn));
}

//查询
$query = 'SELECT * FROM table WHERE id = 1';
$select = get_one($query);

//插入
$data = array(
    'id' => 2,
    'content' => 2,
    'date' => time()
);
$insert = insert('table', $data);

//更新
$data = array(
    'content' => 3,
    'date' => time()
);
$update = update('table', $data, 'id=2');

//删除
$delete = delete('table', 'id=2');

mysqli_close($conn);
?>

 

commo_function.php

<?php
/*
 * 根据条件查询数据表,并返回所查到的所有记录
 * @param string $sql 查询语句
 * @return array $data 所查到的所有记录
 */
function get_all($sql){
    global $conn;
    $res=mysqli_query($conn, $sql);
    $data=array();
    if($res && mysqli_num_rows($res)){
        while($arr=mysqli_fetch_assoc($res)){
            $data[]=$arr;
        }
    }
    return $data;
}
    
/*
 * 根据条件查询数据表,并返回所查到的一条记录
 * @param string $sql 查询语句
 * @return array $data 所查到的一条记录
 */
function get_one($sql){
    global $conn;
    $result=mysqli_query($conn, $sql);
    $data=array();
    if($result && mysqli_num_rows($result)>0){
        $data=mysqli_fetch_assoc($result);
    }    
    return $data;
}
/*
 * 向数据表插入记录,并返回刚插入的记录的id
 * @param string $table 数据表名
 * @param array $fields 要插入的数据(写成array形式,每个key都必须是数据表的字段)
 * @return int 新记录的id
 */
function insert($table,$fields){
    global $conn;
    $k = '`' . implode('`,`', array_keys($fields)) . '`';
    $v = "'" . implode("','", $fields) . "'";
    $sql = "INSERT INTO `$table` ({$k}) VALUES ({$v})";
    mysqli_query($conn, $sql);
    return mysqli_insert_id($conn);
}

/**
 * 向数据表更新一些记录,并返回所影响的记录行数
 * @param string $table 数据表名
 * @param array $fields 要更新的数据(写成array形式,每个key都必须是数据表的字段)
 * @param string $where 查询条件
 * @return int 所影响的记录行数
 */
function update($table, $fields, $where = 0){
    global $conn;
    $str='';
    foreach($fields as $k=>$v){
        $str .= "$k='$v',";    
    }
    $str = rtrim($str, ',');
    $sql = "UPDATE $table SET $str  WHERE $where";
    mysqli_query($conn, $sql);
    return mysqli_affected_rows($conn);
}

/**
 * 向数据表删除一些记录,并返回所影响的记录行数
 * @param string $table 数据表的名称
 * @param string $where 查询条件
 * @return int 所影响的记录行数
 */
function delete($table, $where = 0){
    global $conn;
    $sql = "DELETE FROM $table WHERE $where";
    mysqli_query($conn, $sql);
    return mysqli_affected_rows($conn);
}

 

posted on 2015-11-28 19:58  yhdsir  阅读(227)  评论(0编辑  收藏  举报

导航