
ecshop新版本的时候增加了拦截后台执行更新,删除,插入sql语句,可以删除ecshop根目录下的admin下的sql.php里的一段代码,使后台可执行mysql语句,所需删除的代码如下:
if(!empty($_POST['sql'])){
preg_match_all("/(SELECT)/i", $_POST['sql'],$matches)
if(isset($matches[1]) && count($matches[1])>1)
{
sys_msg("this sql more than one SELECT ")
}
if(preg_match("/(UPDATE|DELETE|TRUNCATE|ALTER|DROP|FLUSH|INSERT|REPLACE|SET|CREATE|CONCAT)/i", $_POST['sql']))
{
sys_msg("this sql May contain UPDATE,DELETE,TRUNCATE,ALTER,DROP,FLUSH,INSERT,REPLACE,SET,CREATE,CONCAT ")
}
}
首页我想确认下 你是不是把那个 sql.txt 里面的文件都复制到 ECSHOP里面去执行啦。如果你这么做了,那就大错特错了,建议你直接把那个文件直接上传到mysql里面去。不要在ecshop里面执行。
那个文件里面很多代码是多余了的。
是配置文件有问题,data/config.php 这个文件修改下就可以。
下面是我们整理的教程:
ecshop有一个数据库配置文件config.php
他的作用是将程序连接到数据库。如果文件不对会出现类似这样的报错
ECSHOP info: Can't select MySQL database(utf211172)!
具体怎么修改呢?
看一下文件
一般造成以上报错的是因为
数据库名字 , 数据库用户名,数据库密码不低
也就是
$db_name = ""
$db_user = ""
$db_pass = ""
这三个字段有问题,重新修改就行(记得用dreamwaver等第三方编辑工具。)
如果数据库用户名密码等信息不明可以问问,空间商
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)