学习PHP编,遇到数据库里的表名的前缀和网页代码调用的前缀不一样,怎么实现的? 10
我最近开始学习PHP编程,我从网站下载了一个PHP源码,请问数据库里的表名的前缀是go_,但网页调用数据库表时,前缀都是@#_,($sql="INSERTINTO`@#_...
我最近开始学习PHP编程,我从网站下载了一个PHP源码,请问数据库里的表名的前缀是go_,但网页调用数据库表时,前缀都是@#_,($sql="INSERT INTO `@#_article` ),为什么不是($sql="INSERT INTO `go_article` )?请问是用什么代码实现这样的功能的?
展开
2个回答
展开全部
通过下面这个方法,轻松搞定,代码如下,有用到的顶起。
复制代码代码如下:
<?php
$database = "databaseName"; //数据库名称
$user = "root"; //数据库用户名
$pwd = "pwd"; //数据库密码
$replace ='pre_'; //替换后的前缀
$seach = 'pre1_'; //要替换的前缀
$db=mysql_connect("localhost","$user","$pwd") or die("连接数据库失败:".mysql_error()); //连接数据库
$tables = mysql_list_tables("$database");
while($name = mysql_fetch_array($tables)) {
$table = str_replace($seach,$replace,$name['0']);
mysql_query("rename table $name[0] to $table");
}
?>
如果是添加前缀只需要变化一点点
复制代码代码如下:
$table = str_replace($seach,$replace,$name['0']);换成
$table = $replace.$name['0'];
复制代码代码如下:
<?php
$database = "databaseName"; //数据库名称
$user = "root"; //数据库用户名
$pwd = "pwd"; //数据库密码
$replace ='pre_'; //替换后的前缀
$seach = 'pre1_'; //要替换的前缀
$db=mysql_connect("localhost","$user","$pwd") or die("连接数据库失败:".mysql_error()); //连接数据库
$tables = mysql_list_tables("$database");
while($name = mysql_fetch_array($tables)) {
$table = str_replace($seach,$replace,$name['0']);
mysql_query("rename table $name[0] to $table");
}
?>
如果是添加前缀只需要变化一点点
复制代码代码如下:
$table = str_replace($seach,$replace,$name['0']);换成
$table = $replace.$name['0'];
追问
你好,不是要替换数据库表名的前缀,而是现在正常可使用的程序,它的数据库表名的前缀名称和PHP代码中调用的数据库表名的前缀不是一样的,数据库里的表名的前缀是go_,但网页调用数据库表时,前缀都是@#_,请问这个功能的代码是如何写的?
2015-09-27
展开全部
替换掉了而已
追问
不能替换,是正常可用的,我是想修改后台数据库表名,但不知道PHP代码,在调用时,要怎样修改原来的前缀“@#”(“@#”这个前缀不是数据库表名的前缀,是否是原来程序开发员,调用了一个公共库,来转换前缀,请指点,谢谢!)
追答
你括号内的话, 恭喜你, 差不多!
中秋佳节, 你还在研究, 精神可嘉!
祝福你节日快乐!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询