2016-08-21 23:06:17 +04:00
|
|
|
|
<?php
|
|
|
|
|
|
2016-09-02 14:41:18 +04:00
|
|
|
|
$global_sql=null;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
function get_sql()
|
2016-08-21 23:06:17 +04:00
|
|
|
|
{
|
2016-08-31 10:33:19 +04:00
|
|
|
|
global $global_sql;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 10:33:19 +04:00
|
|
|
|
if($global_sql)
|
|
|
|
|
return $global_sql;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$global_sql=new mysqli($_SESSION["DB_ADDRESS"],$_SESSION["DB_USERNAME"],$_SESSION["DB_PASSWORD"],$_SESSION["DB_NAME"]);
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 10:33:19 +04:00
|
|
|
|
if($global_sql->connect_error)
|
2016-08-21 23:06:17 +04:00
|
|
|
|
{
|
2016-08-31 15:17:51 +04:00
|
|
|
|
echo "Connection Database error: ".$sql->connect_error;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
2016-08-31 10:33:19 +04:00
|
|
|
|
$global_sql->query("SET NAMES 'utf8'");
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$global_sql->query("USE ".$_SESSION["DB_NAME"]);
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 10:33:19 +04:00
|
|
|
|
return $global_sql;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function get_field_list($table_name)
|
|
|
|
|
{
|
|
|
|
|
$sql=get_sql();
|
|
|
|
|
|
|
|
|
|
if($sql==null)return null;
|
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_result=$sql->query("DESC ".$table_name);
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
|
|
|
|
if(!$sql_result)
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
|
|
$field_list=array();
|
|
|
|
|
while ($row = $sql_result->fetch_object())
|
|
|
|
|
$field_list[] = $row->Field;
|
|
|
|
|
|
|
|
|
|
return $field_list;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function select_table($table_name,$field_list,$where,$start,$count)
|
|
|
|
|
{
|
|
|
|
|
$sql=get_sql();
|
|
|
|
|
|
|
|
|
|
if($sql==null)return;
|
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_string="SELECT";
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
|
|
|
|
if($field_list==null)
|
|
|
|
|
{
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_string=$sql_string." * FROM ".$table_name;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
for($i=0;$i<count($field_list);$i++)
|
|
|
|
|
if($i==0)
|
|
|
|
|
$sql_string=$sql_string.' '.$field_list[$i];
|
|
|
|
|
else
|
|
|
|
|
$sql_string=$sql_string.','.$field_list[$i];
|
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_string=$sql_string." FROM ".$table_name;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if($where!=null&&strlen($where)>3)
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_string=$sql_string." WHERE ".$where;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
if($count!=0)$sql_string=$sql_string." LIMIT ".$start.",".$count;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
|
|
|
|
$sql_result=$sql->query($sql_string);
|
|
|
|
|
|
|
|
|
|
$result=array();
|
|
|
|
|
$index=0;
|
|
|
|
|
|
|
|
|
|
while($row=$sql_result->fetch_row())
|
|
|
|
|
{
|
|
|
|
|
$result[$index]=$row;
|
|
|
|
|
$index++;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$sql_result->close();
|
|
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function select_field($table_name,$field,$where)
|
|
|
|
|
{
|
|
|
|
|
$sql=get_sql();
|
|
|
|
|
|
|
|
|
|
if($sql==null)return;
|
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_string="SELECT ".$field." FROM ".$table_name." WHERE ".$where;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
|
|
|
|
$sql_result=$sql->query($sql_string);
|
|
|
|
|
|
|
|
|
|
if(!$sql_result)
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
|
|
$row=$sql_result->fetch_object();
|
|
|
|
|
|
|
|
|
|
$sql_result->close();
|
|
|
|
|
return $row;
|
|
|
|
|
}
|
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
/**
|
|
|
|
|
* 向一个表中插入数据,使用array的kv模式表示字段和数据
|
|
|
|
|
*/
|
|
|
|
|
function sql_insert()//$table_name,$data_array)
|
2016-08-21 23:06:17 +04:00
|
|
|
|
{
|
|
|
|
|
$sql=get_sql();
|
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
if($sql==null)return null;
|
|
|
|
|
|
|
|
|
|
$table_name=func_get_arg(0);
|
|
|
|
|
$data_array=func_get_arg(1);
|
|
|
|
|
|
|
|
|
|
if(func_num_args()==3)
|
|
|
|
|
$resultmode=func_get_arg(2);
|
|
|
|
|
else
|
|
|
|
|
$resultmode=MYSQLI_STORE_RESULT;
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
2016-08-31 15:17:51 +04:00
|
|
|
|
$sql_string="INSERT INTO ".$table_name." SET";
|
2016-08-21 23:06:17 +04:00
|
|
|
|
|
|
|
|
|
$count=0;
|
|
|
|
|
|
|
|
|
|
foreach($data_array as $field=>$value)
|
|
|
|
|
{
|
|
|
|
|
if($count==0)
|
|
|
|
|
$sql_string=$sql_string.' '.$field.'="'.$value.'"';
|
|
|
|
|
else
|
|
|
|
|
$sql_string=$sql_string.','.$field.'="'.$value.'"';
|
|
|
|
|
|
|
|
|
|
++$count;
|
|
|
|
|
}
|
|
|
|
|
|
2016-09-02 14:41:18 +04:00
|
|
|
|
$sql_result=$sql->query($sql_string);
|
|
|
|
|
|
|
|
|
|
if($sql_result)
|
|
|
|
|
return $sql_result;
|
|
|
|
|
|
|
|
|
|
echo 'SQL Insert error,SQLString: '.$sql_string.'<br/>';
|
|
|
|
|
echo 'SQL Error: '.$sql->error;
|
|
|
|
|
return null;
|
2016-08-31 15:17:51 +04:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 向一个表中插入数据,字段数据来自于post
|
|
|
|
|
*/
|
|
|
|
|
function sql_insert_by_post()//$table_name,$field_array [,$resultmode=MYSQLI_STORE_RESULT])
|
|
|
|
|
{
|
|
|
|
|
$sql=get_sql();
|
|
|
|
|
|
|
|
|
|
if($sql==null)return null;
|
|
|
|
|
|
|
|
|
|
$data_array=array();
|
|
|
|
|
|
|
|
|
|
$table_name=func_get_arg(0);
|
|
|
|
|
$field_array=func_get_arg(1);
|
|
|
|
|
|
|
|
|
|
if(func_num_args()==3)
|
|
|
|
|
$resultmode=func_get_arg(2);
|
|
|
|
|
else
|
|
|
|
|
$resultmode=MYSQLI_STORE_RESULT;
|
|
|
|
|
|
|
|
|
|
foreach($field_array as $field)
|
2016-09-02 14:41:18 +04:00
|
|
|
|
{
|
|
|
|
|
if(isset($_POST[$field])&&strlen($_POST[$field])>0)
|
|
|
|
|
$data_array[$field]=$_POST[$field];
|
|
|
|
|
}
|
2016-08-31 15:17:51 +04:00
|
|
|
|
|
|
|
|
|
return sql_insert($table_name,$data_array,$resultmode);
|
2016-08-21 23:06:17 +04:00
|
|
|
|
}
|
|
|
|
|
?>
|