
正文
用php文件创建数据库 php如何创建文件
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
通过ThinkPHP文件建立数据库数据表
if(!is_writable('config.php')){
emMsg('配置文件(config.php)不可写。如果您使用的是Unix/Linux主机,请修改该文件的权限为777。如果您使用的是Windows主机,请联系管理员,将此文件设为可写');
}
if(!is_writable(EMLOG_ROOT.'/content/cache')){
emMsg('缓存文件不可写。如果您使用的是Unix/Linux主机,请修改缓存目录 (content/cache) 下所有文件的权限为777。如果您使用的是Windows主机,请联系管理员,将该目录下所有文件设为可写');
}
$config = "?php\n"
."//mysql database address\n"
."define('DB_HOST','$db_host');"
."\n//mysql database user\n"
."define('DB_USER','$db_user');"
."\n//database password\n"
."define('DB_PASSWD','$db_pw');"
."\n//database name\n"
."define('DB_NAME','$db_name');"
."\n//database prefix\n"
."define('DB_PREFIX','$db_prefix');"
."\n//auth key\n"
."define('AUTH_KEY','".getRandStr(32).md5($_SERVER['HTTP_USER_AGENT'])."');"
."\n//cookie name\n"
."define('AUTH_COOKIE_NAME','EM_AUTHCOOKIE_".getRandStr(32,false)."');"
."\n";
$fp = @fopen('config.php', 'w');
$fw = @fwrite($fp, $config);
if (!$fw){
emMsg('配置文件(config.php)不可写。如果您使用的是Unix/Linux主机,请修改该文件的权限为777。如果您使用的是Windows主机,请联系管理员,将此文件设为可写');
}
fclose($fp);
//密码加密存储
$PHPASS = new PasswordHash(8, true);
$adminpw = $PHPASS-HashPassword($adminpw);
$dbcharset = 'utf8';
$type = 'MYISAM';
$table_charset_sql = $DB-getMysqlVersion() '4.1' ? 'ENGINE='.$type.' DEFAULT CHARSET='.$dbcharset.';' : 'ENGINE='.$type.';';
if ($DB-getMysqlVersion() '4.1' ){
$DB-query("ALTER DATABASE `{$db_name}` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;", true);
}
$widgets = Option::getWidgetTitle();
$sider_wg = Option::getDefWidget();
$widget_title = serialize($widgets);
$widgets = serialize($sider_wg);
define('BLOG_URL', getBlogUrl());
$sql = "
DROP TABLE IF EXISTS {$db_prefix}blog;
CREATE TABLE {$db_prefix}blog (
gid int(10) unsigned NOT NULL auto_increment,
title varchar(255) NOT NULL default '',
date bigint(20) NOT NULL,
content longtext NOT NULL,
excerpt longtext NOT NULL,
alias VARCHAR(200) NOT NULL DEFAULT '',
author int(10) NOT NULL default '1',
sortid int(10) NOT NULL default '-1',
type varchar(20) NOT NULL default 'blog',
views int(10) unsigned NOT NULL default '0',
comnum int(10) unsigned NOT NULL default '0',
attnum int(10) unsigned NOT NULL default '0',
top enum('n','y') NOT NULL default 'n',
sortop enum('n','y') NOT NULL default 'n',
hide enum('n','y') NOT NULL default 'n',
checked enum('n','y') NOT NULL default 'y',
allow_remark enum('n','y') NOT NULL default 'y',
password varchar(255) NOT NULL default '',
template varchar(255) NOT NULL default '',
PRIMARY KEY (gid),
KEY date (date),
KEY author (author),
KEY sortid (sortid),
KEY type (type),
KEY views (views),
KEY comnum (comnum),
KEY hide (hide)
)".$table_charset_sql."
INSERT INTO {$db_prefix}blog (gid,title,date,content,excerpt,author,views,comnum,attnum,top,sortop,hide,allow_remark,password) VALUES (1, '欢迎使用emlog', '".time()."', '恭喜您成功安装了emlog,这是系统自动生成的演示文章。编辑或者删除它,然后开始您的创作吧!', '', 1, 0, 0, 0, 'n', 'n', 'n', 'y', '');
DROP TABLE IF EXISTS {$db_prefix}attachment;
CREATE TABLE {$db_prefix}attachment (
aid int(10) unsigned NOT NULL auto_increment,
blogid int(10) unsigned NOT NULL default '0',
filename varchar(255) NOT NULL default '',
filesize int(10) NOT NULL default '0',
filepath varchar(255) NOT NULL default '',
addtime bigint(20) NOT NULL default '0',
width int(10) NOT NULL default '0',
height int(10) NOT NULL default '0',
mimetype varchar(40) NOT NULL default '',
thumfor int(10) NOT NULL default 0,
PRIMARY KEY (aid),
KEY blogid (blogid)
)".$table_charset_sql."
DROP TABLE IF EXISTS {$db_prefix}comment;
CREATE TABLE {$db_prefix}comment (
cid int(10) unsigned NOT NULL auto_increment,
gid int(10) unsigned NOT NULL default '0',
pid int(10) unsigned NOT NULL default '0',
date bigint(20) NOT NULL,
poster varchar(20) NOT NULL default '',
comment text NOT NULL,
mail varchar(60) NOT NULL default '',
url varchar(75) NOT NULL default '',
ip varchar(128) NOT NULL default '',
hide enum('n','y') NOT NULL default 'n',
PRIMARY KEY (cid),
KEY gid (gid),
KEY date (date),
KEY hide (hide)
)".$table_charset_sql."
DROP TABLE IF EXISTS {$db_prefix}options;
CREATE TABLE {$db_prefix}options (
option_id INT( 11 ) UNSIGNED NOT NULL auto_increment,
option_name VARCHAR( 255 ) NOT NULL ,
option_value LONGTEXT NOT NULL ,
PRIMARY KEY (option_id),
KEY option_name (option_name)
)".$table_charset_sql."
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('blogname','点滴记忆');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('bloginfo','使用emlog搭建的站点');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('site_title','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('site_description','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('site_key','emlog');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('log_title_style','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('blogurl','".BLOG_URL."');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('icp','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('footer_info','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('admin_perpage_num','15');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('rss_output_num','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('rss_output_fulltext','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_lognum','10');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_comnum','10');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_twnum','10');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_newtwnum','5');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_newlognum','5');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_randlognum','5');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('index_hotlognum','5');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_subnum','20');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('nonce_templet','default');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('admin_style','default');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('tpl_sidenum','1');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_code','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_needchinese','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_interval',60);
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isgravatar','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isthumbnail','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('att_maxsize','20480');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('att_type','rar,zip,gif,jpg,jpeg,png,txt,pdf,docx,doc,xls,xlsx');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('att_imgmaxw','420');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('att_imgmaxh','460');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_paging','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_pnum','10');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('comment_order','newer');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('login_code','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('reply_code','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('iscomment','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('ischkcomment','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('ischkreply','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isurlrewrite','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isalias','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isalias_html','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isgzipenable','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isxmlrpcenable','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('ismobile','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('isexcerpt','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('excerpt_subnum','300');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('istwitter','y');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('istreply','n');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('topimg','content/templates/default/images/top/default.jpg');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('custom_topimgs','a:0:{}');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('timezone','8');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('active_plugins','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('widget_title','$widget_title');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('custom_widget','a:0:{}');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('widgets1','$widgets');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('widgets2','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('widgets3','');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('widgets4','');
相关问答
Q1: PHPStudy怎样创建数据库
1、单击打开phpstudy软件用php文件创建数据库,然后单击mySQL管理器。
2、进入PHPmyadmin登录界面用php文件创建数据库,默认帐号和密码为root。
3、然后,单击数据库并输入所需用php文件创建数据库的数据名称,例如:new,随机获取。
4、然后,单击用户并单击“下一步”以添加用户。
5、填写用户名,主机选择local,密码设置为2。一种是自己设置,另一种是使用系统生成。然后单击添加用户。
6、添加成功后,您可以在下面的图像中看到它,然后单击编辑权限。
7、将进入图形界面,但不在此处设置权限。
8、将滚动条滚动到此点,然后选择刚刚设置的名称。
9、将快速进入权限设置界面,数据和结构选择,管理全部,然后单击执行。
10、完成上述步骤后,构建数据库就完成用php文件创建数据库了。效果如下。
Q2: 如何在php创建数据库与数据表
创建数据库:create database 数据库名
创建数据表:
CREATE TABLE `users` (
`id` tinyint(10) auto_increment primary key NOT NULL,
`username` varchar(30) NOT NULL,
`age` int(10) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
执行这两个sql语句就行
Q3: PHP创建数据库
试试这样:
$chuang = "CREATE DATABASE `ok` DEFAULT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci";
Q4: 如何实现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/html;charset=utf-8");
$sql = new ReadSql("localhost", "root", "", "log_db");
$rst = $sql-Import("./log_db.sql");
if ($rst) {
echo "Success!";
}
?
用php文件创建数据库的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php如何创建文件、用php文件创建数据库的信息别忘了在本站进行查找喔。







