<?php class DB{ private $hostname; private $username; private $password; private $select_db; private $con; private $Error; public function __construct($hostname,$username,$password,$select_db){ if(!empty($hostname)&&!empty($username)&&!empty($select_db))//检查参数是否为空,否则不赋值 { $this->hostname = $hostname; $this->username = $username; $this->password = $password; $this->select_db = $select_db; $this->con = mysql_connect($this->hostname,$this->username,$this->password); if(!$this->con){ $this->Error = die('Could Not Connect:'.mysql_error); } else{ mysql_select_db($this->select_db,$this->con); } } } public function __destruct(){//退出时结束连接 mysql_close($this->con); } public function insert($table,$body){//插入table中的一个数组 $line1 = implode(',',$body); $line2 = implode(',',array_keys($body)); echo $sql = "INSERT INTO $table ($line2) VALUES ($line1)"; $result = mysql_query($sql,$this->con); if(!$result){ echo $this->Error; echo '111'; } } public function update($table,$body){ } public function read($table,$keyword){ } public function delete($table,$keyword){ } public function getLastError(){//返回最后一条错误信息 return $this->Error; } }?>主页调用的是
<?phprequire('DB.class.php'); $DB = new DB('localhost','root','','dbtest'); $line1 = array( 'aa'=>'`aa`', 'bb'=>'`dd`' ); $DB->insert('1234',$line1);?>echo $sql语句是INSERT INTO 1234 (aa,bb) VALUES (`aa`,`dd`)
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
回复讨论(解决方案)
用mysql_error查询$this->con,没有返回错误信息。。。。我现在很抓狂- -求人解答啊。。。。
require('DB.class.php');
$DB = new DB('localhost','root','','dbtest');
$line1 = array(
'aa'=> "'aa'",
'bb'=> "'dd'"
);
$DB->insert('1234',$line1);
你的$line1数组写反了。
而且insert 语句还有一种格式:insert into tb_member set username = "test", type = 1, lastlogindt = now()。跟update样式差不多。
你也可以看看人家写的数据库类,我感觉挺好的:http://www.cnblogs.com/hooray/archive/2012/07/21/2603017.html
你的$line1数组写反了。
而且insert 语句还有一种格式:insert into tb_member set username = "test", type = 1, lastlogindt = now()。跟update样式差不多。
你也可以看看人家写的数据库类,我感觉挺好的:http://www.cnblogs.com/hooray/archive/201…… 其实没写反- -三楼指出来了。。。都是些小符号的问题。。。。。
require('DB.class.php');
$DB = new DB('localhost','root','','dbtest');
$line1 = array(
'aa'=> "'aa'",
'bb'=> "'dd'"
);
$DB->insert('1234',$li…… 唉- -总是些奇奇怪怪的小错误。。。









