0

我有这个php代码,文件托管在另一台服务器和数据库上

$hostname_xxx = "xxxdb.db.234141.mysqldbhosted.com";
$database_xxx = "xx11xx";
$username_xxx = "xx11xx";
$password_xxx = "xx332211xx";
$shasown = mysql_pconnect($hostname_xxx, $username_xxx, $password_xxx) or trigger_error(mysql_error(),E_USER_ERROR); 


$your_ip = $_SERVER['REMOTE_ADDR'];


echo $your_ip;



$insertSQL1 = "INSERT INTO  table (users_ip) VALUES ('$your_ip)";
mysql_select_db($database_xxx, $xxx);
$Result21 = mysql_query($insertSQL1, $xxx) or die(mysql_error());

我得到的错误是

警告:mysql_pconnect() [function.mysql-pconnect]:在第 8 行的 /domains/4444.com/html/55.php 中查询期间丢失与 MySQL 服务器的连接

致命错误:在第 8 行的 /domains/4444.com/html/55.php 中查询期间丢失与 MySQL 服务器的连接

谢谢让

4

1 回答 1

2

mysql_pconnect() 创建到数据库的持久连接,而 mysql_connect() 没有。如果您正在创建持久连接,则在整个会话期间只需要连接一次,因此如果您多次创建持久连接,这可能是原因。

在共享服务器上,可能值得在 mysql_pconnect() 上尝试 mysql_connect(),看看这是否能解决手头的问题。此外,在您的代码中,您有:

$Result21 = mysql_query($insertSQL1, $xxx) or die(mysql_error());

但应该是:

$Result21 = mysql_query($insertSQL1, $shasown) or die(mysql_error());

因为 $xxx 从来都不是连接变量,但 $shasown 是。

我个人喜欢使用 mysqli_connect() 因为我发现它要快一点。

于 2010-08-11T11:30:05.233 回答