PHP / MySQL中的数据库连接问题

时间:2012-04-29 14:50:40

标签: php mysql connection

当我使用添加的行运行下面的脚本时,

$count = 1;

我在屏幕上得到1的值,但是当我拿出那条线时,我根本得不到任何东西。尝试将它移到$ count = mysql_num_rows($ result)之上;我仍然没有得到任何价值。

$sql="SELECT EMAIL FROM CUSTOMER WHERE email='$myemail' and password='$mypassword'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);

$count = 1;
echo $count;

我在这里做错了什么?我从来没有使用过PHP。错误是:

Can't connect to local MySQL server through socket
'/var/run/mysqld/mysqld.sock' (2)

3 个答案:

答案 0 :(得分:1)

这意味着你的MySQL服务器套接字(/var/run/mysqld/mysqld.sock)丢失或损坏。

这也可能意味着MySQL服务无法正常工作,请尝试使用以下命令在SSH中重新启动:

$ service mysqld restart

如果说缺少服务,请说:

$ service mysql restart

答案 1 :(得分:0)

我猜你的SQL查询会出错(var_dump($count);在这种情况下会返回false)。

要检查这一点,我会做两件事:

  • 在您的查询后执行if(!$result) echo mysql_error( ); - 这将显示与数据库通信时发生的任何错误
  • 要检查您的SQL是否正确形成,请在变量(例如$sql = "SELECT email ...";)中创建并回显它。
编辑:啊刚刚看到更新 - 这是一个连接问题。检查您的mysql_connect( )是否拥有合适的主机,用户名&密码。否则,它可能是您系统上的问题(例如防火墙或类似的)

编辑2:正如已经正确指出的那样,mysql_connect详细信息会导致与您看到的连接错误不同。我有一个快速谷歌,它出现了http://lists.mysql.com/mysql/204035。不确定它是否有用,因为我没有阅读它,但它确实描述了在别人的系统上解决这个问题的一些步骤。

答案 2 :(得分:0)

如果无法成功连接到数据库,则mysql_query函数($ result)的返回值将不是有效值。所以,当你将它赋予mysql_num_rows函数时,它会失败&返回FALSE值,它对输出屏幕没有视觉效果!

相关问题