什么问题与我的PHP包括数据库连接


Whats wrong with my PHP include for database connection?

我试图将我的数据库连接脚本移动到外部(因此更安全)文件。然而,它不起作用。

这是我的PHP页面(包含链接)

<?php
include 'block/datalogin.php';
..etc

block/datalogin.php

$dbhost = "localhost";
$dbuser = "************";
$dbpass = "***********";
$dbname = "************";
@mysql_connect($dbhost, $dbuser, $dbpass) or die("unable to
connect to database."
);
mysql_select_db($dbname) or die ("Unable to select");

我确定路径和登录信息是正确的。

有什么建议吗?

去掉mysql_connect前面的"@"符号

首先,不要在新代码中使用mysql_*函数。它们不再被维护,并被正式弃用。见红框?学习预处理语句,并使用PDO或MySQLi——本文将帮助您决定使用哪一种。如果你选择PDO,这里有一个很好的教程。


<?php
    $dbhost = "localhost";
    $dbuser = "************";
    $dbpass = "***********";
    $dbname = "************";
    $conn=mysql_connect($dbhost, $dbuser, $dbpass) or die("unable to connect to database.");
    mysql_select_db($dbname) or die ("Unable to select");
?>

然后在查询的

中使用$conn变量
mysql_query("SELECT * from ....",$conn);