我正在尝试创建一个数据库连接,连接详细信息在另一个页面上。
之前,所有这些细节都与所有其他代码在同一页面上,比如:
$host="localhost"; // Host name
$username="username"; // Mysql username
$password="password"; // Mysql password
$db_name="database"; // Database name
$tbl_name="table"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);
等等。这就是我现在建立数据库连接的方式。每个页面都有这样的代码,只是每个页面的sql不同。
现在,我要做的是:
每个页面都应该有:
include_once '../includes/db_connect.php';
页面db_connect.php
包含以下行:
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
每个页面都应该使用此代码自动连接到数据库。我不想把所有的细节都写在每一页上。因此,在页面本身上,$sql
应该已经连接好了,这样我就可以从$sql
部分开始我的代码。
如何做到这一点?因为现在我得到一个错误,$sql
无法执行,因为没有数据库连接。
将其作为连接文件:
<?php
$sql = new mysqli ("HOST","USER","PASS" ,"DB");
$sql -> set_charset ( 'utf8' );
if ($sql->connect_errno) {
printf("Connect failed: %s'n", $sql->connect_error);
exit();}
?>
您可以简单地通过包含此文件
include('filename.php');
或者,如果它在另一个目录中
include('../path/to/file/filename.php');
你把mysql_和mysqli_混合在一起,希望你用的是mysqli_我也用过这个。