phpmyadmin实现sql执行的php实现方法求助
wchun 2004-04-30 09:45:02 恩,就是如题,我已经能把.sql文本文件读出来了
然后,就想执行.sql文件。
.sql的内容如下:
#
# 表的结构 `user`
#
CREATE TABLE `user` (
`userid` int(10) unsigned NOT NULL auto_increment,
`username` varchar(50) NOT NULL default '',
`usergroupid` int(10) unsigned NOT NULL default '0',
`password` varchar(50) NOT NULL default '',
`email` varchar(100) NOT NULL default '',
`joindate` int(10) unsigned NOT NULL default '0',
`homepage` varchar(100) default NULL,
`sex` varchar(10) NOT NULL default 'unknow',
`address` varchar(250) default NULL,
`qq` varchar(16) default NULL,
`icq` varchar(16) default NULL,
`msn` varchar(50) default NULL,
`intro` text,
`tel` varchar(20) default NULL,
`rememberpw` tinyint(1) unsigned NOT NULL default '1',
`posts` int(10) unsigned NOT NULL default '0',
`lastvisit` int(10) unsigned NOT NULL default '0',
`lastactivity` int(10) unsigned NOT NULL default '0',
`timezoneoffset` float NOT NULL default '8',
PRIMARY KEY (`userid`),
KEY `usergroupid` (`usergroupid`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
#
# 导出表中的数据 `user`
#
INSERT INTO `user` VALUES (1, 'root', 1, '57e2713d5f928af584863a23820fafd6', 'root@localhost', 1082511240, NULL, 'unknow', NULL, NULL, NULL, NULL, NULL, NULL, 1, 0, 1083034986, 1083034987, '8');
$filehandle = fopen($_POST[datafile],"r");
$contents = fread ($filehandle, filesize ($_POST[datafile]));
fclose($filehandle);
$connection=mysql_connect ("$dbhost","$dbuser","$dbpass");
mysql_select_db("$dbname",$connection);
$SQL="$contents";
$result=mysql_query($SQL);
if(!$result) {echo "数据库错误,操作失败!";echo "<a href=\"javascript:history.go(-1)\">返回</a>"; exit;}
呵呵,这样最后的结果是数据库错误,操作失败!
请兄弟们帮忙。
还有一个问题,如果我的文件太大的话,是不用应该采用其他的方法来实现??
而不能直接$contents = fread ($filehandle, filesize ($_POST[datafile]));