【问题标题】:Connecting to a server's local host (PHP programming)连接到服务器的本地主机(PHP 编程)
【发布时间】:2014-02-17 16:04:15
【问题描述】:

我只是 PHP 编程的业余爱好者,我希望你能帮助我解决我的这个问题。我上周刚开始学习 php,我的问题是我找不到如何连接到服务器计算机的本地主机的方法。基本上我 global.php 中的代码是这样的:

<?php
error_reporting(0);
session_start();

$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "carlog";

mysql_connect($dbhost, $dbuser, $dbpass) or die (mysql_error());
mysql_select_db($dbname) or die (mysql_error());
?>

所以我通过虚拟路由器连接到服务器计算机。我希望客户端计算机可以连接到服务器的本地主机。我尝试将“localhost”更改为服务器的 IP 添加,但没有任何反应。客户端计算机无法连接到服务器(只能连接到它自己的本地主机)

如果你们中的任何人能帮助我解决我的这个问题,我会非常高兴。谢谢

【问题讨论】:

  • webserver和mysql是在同一台电脑上运行的吗?
  • 我不懂设置?另外,如果您不熟悉 PHP,请不要使用 mysql_* 函数。它们已被弃用。查看 MySQLi 或 PDO。
  • 最好用新技术学习 PHP,使用 PDO 代替 mysql_* 函数。 php.net/manual/en/book.pdo.php
  • 您使用的是哪个“服务器软件”?
  • 当您在控制台输入mysql -uroot 时,您确定服务器正常工作并且可以访问它吗?

标签: php mysql localhost


【解决方案1】:

您正在运行哪个版本的 PHP?此方法已弃用。我建议您查看如何设置 PDO 连接。 http://php.net/manual/en/pdo.connections.php

在您的终端中尝试 ping 并检查您是否可以访问它。在您的代码中使用此 IP。

隐藏所有错误并不能帮助您调试问题。 使用:

error_reporting(E_ALL);

并检查输出

【讨论】:

    【解决方案2】:

    首先,如果现在抛出任何错误,顶部的error_reporting(0); 会阻止系统告诉你它看到了什么。

    其次,正如其他人所指出的,请尝试看看您是否可以使用 PDO 或 MySQLi 而不是 mysql_connect() 系列,因为它确实已被弃用并计划在未来从 PHP 中删除。

    第三,确保 MySQL 服务器正在默认端口 3306 上运行,没有防火墙将其关闭,正在远程服务器上运行等:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-02
      • 1970-01-01
      • 1970-01-01
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多