开启辅助访问 切换到窄版

PHP 7 mysql_connect连接失败

[复制链接]
作者:hanhongwen 
版块:
PHP PHP-问题解决方案 发布时间:2017-11-29 11:48:18
4620

管理员

积分
9930
QQ
hanhongwen 发表于 2017-11-29 11:48:18 | 显示全部楼层 |阅读模式
问题原因:
访问后台出现如下错误代码:
Call to undefined function mysql_connect()


问题解析:
从php7开始,数据库扩展换成了mysqli


解决办法:
修改程序代码,这里使用的是ThinkPHP为例
进入后台目录,找到如下目录及文件
/Controller/IndexController.class.php


打开文件进行修改
# vim IndexController.class.php
找到如下内容
mysql_connect("localhost", "root", "root");


修改 mysql_connect 为 mysqli_connect 即可,如下
mysqli_connect("localhost", "root", "root");


修改完成之后会报如下错误
mysql_get_server_info


继续修改,找到如下内容
$sys_info['mysql_version']   = mysql_get_server_info();


修改和上面一样,需要把mysql 修改为 mysqli ,如下
$sys_info['mysql_version']   = mysqli_get_server_info();


如上修改完成之后,输出没有报错,但是mysql的版本无法显示,可以对代码进行如下修改

代码一
  1. $link = mysqli_connect("localhost", "my_user", "my_password");

  2. /* 选择mysql连接 */
  3. if (mysqli_connect_errno()) {
  4.     printf("Connect failed: %s\n", mysqli_connect_error());
  5.     exit();
  6. }

  7. /* 打印mysql服务器信息 */
  8. printf("Server version: %s\n", mysqli_get_server_info($link));

  9. /* 关闭连接 */
  10. mysqli_close($link);
复制代码






代码二
  1. $mysqli = new mysqli("localhost", "my_user", "my_password");

  2. /* 选择mysql连接 */
  3. if (mysqli_connect_errno()) {
  4.     printf("Connect failed: %s\n", mysqli_connect_error());
  5.     exit();

  6. /* 打印mysql服务器信息 */
  7. printf("Server version: %s\n", $mysqli->server_info);

  8. /* 关闭连接 */
  9. $mysqli->close();
复制代码






以上为在php 7上进修改mysql连接问题的简单解决办法,祝你成功
    15561578755
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表