扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
马上给你 ?php
10多年的水城网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整水城建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“水城网站设计”,“水城网站推广”以来,每个客户项目都认真落实执行。
/*===============================================================*/
/*文件名:Model.class.php */
/*概要: 模块处理类,公用的数据库的操作*/
/*作者:袁再新 */
/*作品声明:本人属于初学者,限于技术水平勿将此例作为商用*/
/*制作时间:2012-3-30 */
/*===============================================================*/
//
class Model{
protected $pdo;
protected $tabName;
protected $messList;
protected $fieldList;
function __construct(){
try{
$this-pdo=new PDO('mysql:dbname='.DB_NAME.';host='.DB_HOST,DB_USER,DB_PSWD,array(PDO::ATTR_ERRMODE=PDO::ERRMODE_EXCEPTION));
$this-pdo-exec('set names gbk');//解决字符编码问题
}catch(PDOException $e){
echo '数据库连接失败:'.$e-getMessage();
exit;
}
}
function add($postList){
$fieldList='';
$value='';
foreach($postList as $key=$val){
if(in_array($key,$this-fieldList)){
$fieldList.=$key.',';
if($key=='userPwd'){
$val=md5($val);
}
if(!get_magic_quotes_gpc()){
$value.="'".addslashes($val)."'".',';
}else{
$value.="'".$val."',";
}
}
}
$fieldList=rtrim($fieldList,',');
$value=rtrim($value,',');
try{
$sql='INSERT INTO '.$this-tabName.'('.$fieldList.')'.' values('.$value.')';
$affected=$this-pdo-exec($sql);
}catch(PDOException $e){
echo '数据录入失败:'.$e-getMessage();
echo $sql;
exit();
}
return $affected;
}
function mod($postList){
$id='';
$value='';
$id=$postList['id'];
unset($postList['id']);
foreach($postList as $key=$val){
if(in_array($key,$this-fieldList)){
if(!get_magic_quotes_gpc()){
if($key=='userPwd'){
$val=md5(addslashes($val));
}else{
$val=addslashes($val);
}
$value.=$key."='".$val."',";
}else{
$value.=$key."='".$val."',";
}
}
}
$value=rtrim($value,',');
try{
$sql='UPDATE '.$this-tabName.' SET '.$value.' WHERE id='.$id;
$affected=$this-pdo-exec($sql);
}catch(PDOException $e){
echo '更新失败;'.$e-getMessage();
exit;
}
return $affected;
}
function del($id){
if(is_array($id)){
$tmp='IN ('.join(',',$id).')';
}else{
$tmp="$id";
}
try{
$affected=$this-pdo-exec('DELETE FROM '.$this-tabName.' WHERE id='.$tmp);
}catch(PDOException $e){
echo '数据删除失败:'.$e-getMessage();
exit();
}
return $affected;
}
function find($id){
$fields=join(',',$this-fieldList);
$sql='SELECT '.$fields.' FROM '.$this-tabName.' WHERE id='.$id;
$stmt=$this-pdo-query($sql);
if($stmt$stmt-rowCount()0){
return $stmt-fetch(PDO::FETCH_ASSOC);
}else{
//echo $stmt;作为调试用
return false;
}
}
function total($where=''){
$sql='SELECT * FROM '.$this-tabName.' '.$where;
$stmt=$this-pdo-query($sql);
return $stmt-rowCount();
}
function findAll($where='',$field=array(),$offset=0,$number=0,$isall=false,$order='id desc'){
if(empty($field)){
$field=join(',',$this-fieldList);
}else{
$field=join(',',$field);
}
if($number==0){
$sql='SELECT '.$field.' FROM '.$this-tabName." ".$where.' ORDER BY '.$order;
}else{
$sql='SELECT '.$field.' FROM '.$this-tabName." ".$where.' ORDER BY '.$order.' LIMIT '.$offset.','.$number;
}
$stmt=$this-pdo-query($sql);
if($stmt$stmt-rowCount()0$isall===false){
return $stmt-fetch(PDO::FETCH_ASSOC);
}elseif($stmt$stmt-rowCount()0$isall===true){
return $stmt-fetchAll(PDO::FETCH_ASSOC);
}else{
return false;
}
}
function getMessList(){
$message='';
if(!empty($this-messList)){
foreach($this-messList as $value){
$message.=$value.'br';
}
}
return $message;
}
}
一、PHP操作MySql数据库
新增数据
?php
$query = "INSERT INTO grade (name,email,point,regdate) VALUE
(' 李三','yc60.com@gmail.com',,NOW())" ;
@mysql_query($query) or die( '添加数据出错:' .mysql_error());
?
修改数据
?php
$query = "UPDATE grade SET name='小可爱' WHERE id=6" ;
@mysql_query($query) or die( '修改出错:' .mysql_error());
?
删除数据
?php
$query = "DELETE FROM grade WHERE id=6";
@mysql_query($query) or die( '删除错误:' .mysql_error());
?
显示数据
?php
$query = "SELECT id,name,email,point FROM grade";
$result = @mysql_query($query) or die( '查询语句出错:' .mysql_error());
while (!! $row = mysql_fetch_array($result)) {
echo $row[ 'id' ]. '----' .$row['name' ].'----' .$row ['email' ]. '----' .$row['point' ];
echo 'br /';
}
?
二、其他常用函数
mysql_f etch_row() :从结果集中取得一行作为枚举数组
mysql_f etch_assoc() : 从结果集中取得一行作为关联数组
mysql_f etch_array() : 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
mysql_f etch_lengths () : 取得结果集中每个输出的长度
mysql_f ield_name(): 取得结果中指定字段的字段名
mysql_num_rows(): 取得结果集中行的数目
mysql_num_f ields():取得结果集中字段的数目
mysql_get_client_inf o() : 取得 MySQL 客户端信息
mysql_get_host_info(): 取得 MySQL 主机信息
mysql_get_proto_info(): 取得 MySQL 协议信息
mysql_get_server_inf o() : 取得 MySQL 服务器信息
DROP DATABASE `数据库名称`;
这个可以删除数据库,如果不行的话,暂停掉MYSQL,然后到你的数据库安装目录,找出DATA文件,在里面删除就可以了。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流