PHP数据库编程(2)

PHP数据库编程(2)

细节

1、使用完$res结果集后,一事实上要及时的释放资源

2、mysql_close()如果没有的话,系统也会自动的关闭

3、从$res获取行数据的时候,处理mysl_fetch_row($res)

  • — 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
  • — 从结果集中取得一行作为关联数组
  • — 从结果集中取得列信息并作为对象返回
  • — 取得结果集中每个输出的长度
  • — 从结果集中取得一行作为对象
  • — 从结果集中取得一行作为枚举数组(官方推荐)

PHP实现

<?php

/* //user1表增加、删除、修改

$conn=mysql_connect("localhost:3336","root","myoa888");

if(!$conn){

die("数据库连接失败".mysql_error());

}

mysql_select_db("phpstudy",$conn)or die(mysql_error());

mysql_query('set names gbk',$conn);

//添加

//$sql="Insert intouser1(name,password,email,age) values ('顾明百',md5('

//123'),'[email protected]',25) ";

//删除

//$sql=" delete from user1 whereage=25";

//修改

$sql="update user1 set age=25 whereid=4";

//如查是DML操作,则返回bool

$res=mysql_query($sql);

if(!$res){

echo "添加操作失败!".mysql_error();

}

//查看数据有几条

if(mysql_affected_rows($conn)>0){

echo "添加成功!";

}

mysql_close($conn);

*/

//使用类

require_once "SqlTool.class.php";

$sql="Insert intouser1(name,password,email,age) values ('顾明百99',md5('

123'),'[email protected]',25) ";

$sqlTool= new SqlTool();

$res=$sqlTool->excute_dm1($sql);

if($res==0){

echo "失败";

}else if($res==1){

echo "成功";

}else if($res==2){

echo "没有行数影响";

}

?>

SqlTool.class.php数据库封装类(简单)

<?php

classSqlTool{

private $conn;

private $host="localhost:3336";

private $user="root";

private $password="myoa888";

private $db="phpstudy";

function SqlTool(){

$this->conn=mysql_connect($this->host,$this->user,$this->password);

if(!$this->conn){

die("连接数据库失败".mysql_error());

}

mysql_select_db($this->db,$this->conn);

mysql_query("set namesgbk",$this->conn);

}

//完成select

public function excute_db1($sql){

}

//完成 update,delete,insert

public function excute_dm1($sql){

$b=mysql_query($sql,$this->conn);

if(!$b){

return 0;//失败

}

else{

if(mysql_affected_rows($this->conn)>0){

return 1;//成功

}else{

return 2;//没有行数影响

}

}

}

}

?>