这是因为您正在混合mysqli
和mysql
apiconfig.php
最终完全没有连接
mysqli_connect($db_hostname, $db_username, $db_password)
mysql_select_db($db_database)
要使用 mysqli 扩展与数据库的正确连接(这显然更好用,因为mysql_*
不推荐使用函数),请执行以下操作:
$mysqli = new mysqli('localhost', 'fake_user', 'my_password', 'my_db');
if ($mysqli->connect_errno) {
die('Connect Error: ' . $mysqli->connect_errno);
}
您可以在此处查看文档
我想补充一点,您可以config.php
在任何其他脚本中使用仅需要它的连接。
require('config.php');
所以你的creatables.php
会看起来像这样
require("config.php");
$sql="CREATE TABLE quoter (
id int NOT NULL AUTO_INCREMENT,
quote text NOT NULL,
quoteby CHAR(50) NOT NULL,
PIMARY KEY (id)
)";
if (mysqli_query($mysqli,$sql))
{
echo "Table 'quoter' was created sucessfully";
}
else
{
echo "Error creating table 'quoter': ".mysqli_error($mysqli);
}
和你的config.php
$mysqli = new mysqli('localhost', 'fake_user', 'my_password', 'my_db');
if ($mysqli->connect_errno) {
die('Connect Error: ' . $mysqli->connect_errno);
}
我希望您注意这$mysqli
是处理连接的参数,因此您需要在数据库中执行操作时传递这个参数,例如
mysqli_query($mysqli,$sql);
//^here it is