建立与数据库的连接

Establish connection to a database

我最近使用 Ubuntu 14.0 桌面在 Oracle VM VirtualBox 中安装了 LAMP 服务器,因此我可以了解 PHP 与 MySQL 数据库的交互。

我无法与我的数据库建立连接。即使我使用了错误的用户名,它也不会给出任何错误信息。我知道我已经正确设置了 LAMP,因为我在本地主机上有 运行 个其他 PHP 文件。

这是我的脚本:

<?php 
function conexao() {
$db = 'webservice';
$user = 'xxxxx';
$pass = 'xxxxx';
$host = 'localhost';
$conn = mysql_connect($host,$user,$pass);
mysql_select_db($db);   
}
conexao();
?>

我应该在我的连接信息错误时收到消息,对吗?好吧,什么也没有发生,就像当所有信息都正常时一样。

你可以试试我用来连接到我的数据库的这个脚本

<?php
define("HOST", "localhost"); // The host you want to connect to.
define("USER", "username"); // The database username.
define("PASSWORD", "password"); // The database password. 
define("DATABASE", "webservice"); // The database name.

date_default_timezone_set('Europe/Stockholm');

$con = mysqli_connect(HOST, USER, PASSWORD, DATABASE);

if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error() . "\n";
}
mysqli_set_charset($con, "utf8");
?>

如果这不起作用,则可能是您调用脚本的请求出错。

function conexao() { 
$db = 'webservice'; 
$user = 'xxxxx';
$pass = 'xxxxx';
$host = 'localhost';

$conn = mysql_connect($host,$user,$pass);
if(!$conn){ 
$retval = 'Could not Connect' . mysql_error(); 
}
else if(!mysql_select_db($db)){ 
$retval = 'Could not select db' . mysql_error(); 
}
else{ 
$retval = 'Success'; 
}

return $retval;
} // end of function 

现在在您的函数调用上相应地处理 returns。 *** mysql 已弃用,请改用 mysqli 或 PDO。

}