$db->query($sqll)//执行插入,一定要用query,不能用exec
$id=$db->lastInsertId()//获取刚才插入记录的自动编号值。
你做好程序以后,把数据库导出成sql文件(这个文件里就已经有了一下创建数据表,添加数据记录等的一些sql语句了)新建一个安装文件:
1、连接数据库(安装的时候不是要填写一些数据库连接参数等吗)
2、读取这个sql文件里的sql语句,并执行
3、生成一个数据库连接参数的php文件
就这么简单,思路是这样啊,具体这么实现,你自己慢慢研究
你做好程序以后,把数据库导出成sql文件1、连接数据库
2、读取这个sql文件里的sql语句,并执行
3、生成一个数据库连接参数的php文件
<?php
$con = mysql_connect("localhost","peter","abc123")
if (!$con)
{
die('Could not connect: ' . mysql_error())
}
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created"
}
else
{
echo "Error creating database: " . mysql_error()
}
mysql_close($con)
?>
<?php
class ReadSql {
//数据库连接
protected $connect = null
//数据库对象
protected $db = null
//sql文件
public $sqlFile = ""
//sql语句集
public $sqlArr = array()
public function __construct($host, $user, $pw, $db_name) {
$host = empty($host) ? C("DB_HOST") : $host
$user = empty($user) ? C("DB_USER") : $user
$pw = empty($pw) ? C("DB_PWD") : $pw
$db_name = empty($db_name) ? C("DB_NAME") : $db_name
//连接数据库
$this->connect = mysql_connect($host, $user, $pw) or die("Could not connect: " . mysql_error())
$this->db = mysql_select_db($db_name, $this->connect) or die("Yon can not select the table:" . mysql_error())
}
//导入sql文件
public function Import($url) {
$this->sqlFile = file_get_contents($url)
if (!$this->sqlFile) {
exit("打开文件错误")
} else {
$this->GetSqlArr()
if ($this->Runsql()) {
return true
}
}
}
//获取sql语句数组
public function GetSqlArr() {
//去除注释
$str = $this->sqlFile
$str = preg_replace('/--.*/i', '', $str)
$str = preg_replace('/\/\*.*\*\/(\)?/i', '', $str)
//去除空格 创建数组
$str = explode("\n", $str)
foreach ($str as $v) {
$v = trim($v)
if (empty($v)) {
continue
} else {
$this->sqlArr[] = $v
}
}
}
//执行sql文件
public function RunSql() {
foreach ($this->sqlArr as $k => $v) {
if (!mysql_query($v)) {
exit("sql语句错误:第" . $k . "行" . mysql_error())
}
}
return true
}
}
//范例:
header("Content-type:text/htmlcharset=utf-8")
$sql = new ReadSql("localhost", "root", "", "log_db")
$rst = $sql->Import("./log_db.sql")
if ($rst) {
echo "Success!"
}
?>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)