【问题标题】:Why does mysql_connect break my .php?为什么 mysql_connect 会破坏我的 .php?
【发布时间】:2010-12-09 16:07:28
【问题描述】:

我在带有 PHP 5.3.3 的 Apache 2.2 上运行以下代码:

<html>
<body>
<?php
error_reporting(E_ALL);

echo "Connecting...";

$conn = mysql_connect('127.0.0.1:3306','root','*******') or die('Error connecting to mysql');

echo 'Connected.';
?>
</body>
</html>

它打印出“正在连接...”,但没有别的。甚至不会抛出错误。我经历了所有显而易见的步骤。帮忙?

【问题讨论】:

  • php-mysql 扩展中的段错误?我不确定。您可能需要检查您的 Apache 日志。
  • 您不应以 root 身份连接。不过你可能知道。 :-)

标签: php mysql mysql-connect


【解决方案1】:

error_reporting(E_ALL); 有时可能不会这样做。结合使用它:

ini_set('display_errors', 1);

然后看看它是否返回错误:)

【讨论】:

  • +1 如果 display_errors 设置为 off 并且未加载 mysql 扩展,则可以得到描述的症状。
  • 那个。是这样的。诡异的。在我的 php.ini 中,我专门将 display_errors 设置为 ON ALL CASES。也许它使用不同的......或没有。我没有另一个。无论如何,这行得通。我收到“致命错误:在第 15 行的 *****.php 中调用未定义函数 mysql_connect()。嗯。谢谢!
【解决方案2】:

测试跳过端口符号,因为无论如何您都在指定默认端口。

您的 Apache 错误日志说明了什么?

var_dump($conn) 打印出什么?

【讨论】:

  • 好的,我明白了。它不应该有任何区别,但这只是我在调试时会测试的东西,以查看 MySQL 库中是否存在错误。 :-)
【解决方案3】:
<?php
$conn = mysql_connect('127.0.0.1:3306','root','*******')
if (!$conn ) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($conn );
?>

【讨论】:

  • close 应该引用 $conn 而不是 $link
猜你喜欢
  • 2011-08-19
  • 1970-01-01
  • 2013-06-25
  • 2013-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多