图集1/6

正文 2092字数 100,347阅读


方式一:
在PHP代码中使用phpinfo()函数查看PHP基本信息
从PHP5.0开始mysql_connect()就不推荐使用了,到PHP7.0就直接被废弃了,如果PHP为7.0及以上版本的话用mysqli_connect()代替

方式二:
安装的php缺少mysql模块导致
CentOs安装mysql模块:
yum install php-mysql -y
Run code
Cut to clipboard

    如果安装了之后报下面的警告
    Headers and client library minor version mismatch. Headers:
    这是由于高版本的MySQL,低版本的MySQL Client API引起的
    这时候可以先卸载刚才的php-mysql
    yum remove php-mysql -y
    Run code
    Cut to clipboard

      然后
      yum install php-mysqlnd -y
      Run code
      Cut to clipboard

        最后重启apache
        systemctl restart httpd
        Run code
        Cut to clipboard

          Ubuntu安装mysql模块:
          apt-get install php5-mysql sudo dpkg-reconfigure php5-mysql sudo /etc/init.d/mysql restart
          Run code
          Cut to clipboard


            方式三:
            如果前两种方法都不能解决,试着在php.ini配置文件中打开mysql模块的扩展
            php.ini文件中查找 ;extension=“有关的mysql模块” 把前面的;去掉
            然后确保extension的dir指向的是扩展存放的目录
            windows一般在ext下面,centos在/usr/lib64/php/modules下面
            以上信息都可以在phpinfo打印出的信息查找到
            不过我遇到这个问题的时候,只需要安装php-mysql模块就好了,并不需要修改php.ini

            方法四:
            通过自行写函数让php7+可以使用mysql_connect();
            if(!function_exists('mysql_connect')){ function mysql_connect($dbhost, $dbuser, $dbpass){ global $dbport; global $dbname; global $mysqli; $mysqli = mysqli_connect("$dbhost:$dbport", $dbuser, $dbpass, $dbname); return $mysqli; } function mysql_select_db($dbname){ global $mysqli; return mysqli_select_db($mysqli,$dbname); } function mysql_fetch_array($result){ return mysqli_fetch_array($result); } function mysql_fetch_assoc($result){ return mysqli_fetch_assoc($result); } function mysql_fetch_row($result){ return mysqli_fetch_row($result); } function mysql_query($query){ global $mysqli; return mysqli_query($mysqli,$query); } function mysql_escape_string($data){ global $mysqli; return mysqli_real_escape_string($mysqli, $data); } function mysql_real_escape_string($data){ return mysql_real_escape_string($data); } function mysql_close(){ global $mysqli; return mysqli_close($mysqli); } }
            Run code
            Cut to clipboard