Home >Backend Development >PHP Tutorial > php连接Mysql不成功,可以使用Mysqli和PDO连接成功。该如何解决

php连接Mysql不成功,可以使用Mysqli和PDO连接成功。该如何解决

WBOY
WBOYOriginal
2016-06-13 13:46:52919browse

php连接Mysql不成功,可以使用Mysqli和PDO连接成功。
环境是win7下面自己手动搭建的apache2.2+php5.3+mysql5,各项环境搭建均成功,phpinfo上面看到的Mysql和Mysqli都是对的,但是使用php连接Mysql不成功,但是可以成功使用Mysqli和PDO,而且连接错误的是很不显示错误信息,直接跳转到不能访问的页面。请求帮助!!!!!!!!


------解决方案--------------------

PHP code

function connect($servername, $username, $password, $dbname){
 echo "进入链接";
    $con = mysql_connect($servername, $username, $password);
    $con = mysql_select_db($dbname, $con);
 return $con;
}
<br><font color="#e78608">------解决方案--------------------</font><br>mysql_connect<br><br>(PHP 4, PHP 5)<br><br>mysql_connect ― 打开一个到 MySQL 服务器的连接<br><br>说明<br><br>resource mysql_connect ([ string $server [, string $username [, string $password [, bool $new_link [, int $client_flags ]]]]] )<br>打开或重复使用一个到 MySQL 服务器的连接。<br><br>参数<br><br>server<br>MySQL 服务器。可以包括端口号,例如 "hostname:port",或者到本地套接字的路径,例如对于 localhost 的 ":/path/to/socket"。<br><br>如果 PHP 指令 mysql.default_host 未定义(默认情况),则默认值是 'localhost:3306'。<br><br>username<br>用户名。默认值是服务器进程所有者的用户名。<br><br>password<br>密码。默认值是空密码。<br><br>new_link<br>如果用同样的参数第二次调用 mysql_connect(),将不会建立新连接,而将返回已经打开的连接标识。参数 new_link 改变此行为并使 mysql_connect() 总是打开新的连接,甚至当 mysql_connect() 曾在前面被用同样的参数调用过。<br><br>client_flags<br>client_flags 参数可以是以下常量的组合:MYSQL_CLIENT_SSL,MYSQL_CLIENT_COMPRESS,MYSQL_CLIENT_IGNORE_SPACE 或 MYSQL_CLIENT_INTERACTIVE。进一步信息见MySQL 客户端常量。<br><br>返回值<br><br>如果成功则返回一个 MySQL 连接标识,失败则返回 FALSE。<br><br>更新日志<br><br>版本	说明<br>4.3.0	 添加 client_flags 参数。<br>4.2.0	 添加 new_link 参数。<br>3.0.10	 对 server 添加 ":/path/to/socket" 支持。<br>3.0.0	 对 server 添加 ":port" 支持。<br>范例<br><br>Example #1 mysql_connect() 例子<br><?php <br />$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');<br>if (!$link) {<br>   die('Could not connect: ' . mysql_error());<br>}<br>echo 'Connected successfully';<br>mysql_close($link);<br>?><br>Example #2 mysql_connect() 例子:使用 hostname:port 语法<br><?php <br />// we connect to example.com and port 3307<br>$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password');<br>if (!$link) {<br>   die('Could not connect: ' . mysql_error());<br>}<br>echo 'Connected successfully';<br>mysql_close($link);<br><br>// we connect to localhost at port 3307<br>$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password');<br>if (!$link) {<br>   die('Could not connect: ' . mysql_error());<br>}<br>echo 'Connected successfully';<br>mysql_close($link);<br>?><br>Example #3 mysql_connect() 例子:使用 ":/path/to/socket" 语法<br><?php <br />// we connect to localhost and socket e.g. /tmp/mysql.sock<br><br>//variant 1: ommit localhost<br>$link = mysql_connect('/tmp/mysql', 'mysql_user', 'mysql_password');<br>if (!$link) {<br>   die('Could not connect: ' . mysql_error());<br>}<br>echo 'Connected successfully';<br>mysql_close($link);<br><br><br>// variant 2: with localhost<br>$link = mysql_connect('localhost:/tmp/mysql.sock', 'mysql_user', 'mysql_password');<br>if (!$link) {<br>   die('Could not connect: ' . mysql_error());<br>}<br>echo 'Connected successfully';<br>mysql_close($link);<br>?><br>注释<br><br>Note:<br><br>只要将 server 指定为 "localhost" 或 "localhost:port",MySQL 客户端库会越过此值并尝试连接到本地套接字(Windows 中的名字管道)。如果想用 TCP/IP,应该用 "127.0.0.1" 代替 "localhost"。如果 MySQL 客户端库试图连接到一个错误的本地套接字,则应该在 PHP 配置中设定 的正确路径并把 server 留空。<br><br>Note:<br><br>脚本一结束,到服务器的连接就被关闭,除非之前已经明确调用 mysql_close() 关闭了。<br><br>Note:<br><br>可以在函数名前加上一个 @ 来抑制出错时的错误信息。<br><br>参见<br><br>mysql_pconnect() - 打开一个到 MySQL 服务器的持久连接<br>mysql_close() - 关闭 MySQL 连接
<br><font color="#e78608">------解决方案--------------------</font><br>你的连接服务器名称用的是localhost或者是127.0.0.1吗,换成你的计算机名称试一下,以前碰到过这样的问题
<br><font color="#e78608">------解决方案-------------------- <div class="clear">
                 
              
              
        
            </div></font>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn