我是mysql的新手但最近尝试过一些教程来提升我的知识。无论如何我在我的ubuntu服务器上安装了mysql以及phpmyadmin。他们似乎都工作得很好,我在phpmyadmin创建了一个名为“test”的数据库以及一个名为“teddy”的表。 我将数据放入表中,我可以通过phpmyadmin清楚地看到它。
现在,当我尝试通过我的ubuntu服务器上的php脚本访问此数据库时,没有任何反应。没什么。它的反应方式与我遇到语法错误(没有显示任何内容的快速加载)相同。
这是我的代码......如果有人知道我的错误在哪里,我将非常感激。
谢谢
<?php
$username='root';
$password='***';
$database='test';
@$db= mysqli_connect('localhost', $username, $password, $database);
if (mysqli_connect_errno())
{
echo 'Error: Could not connect';
exit;
}
$query= "select * from test";
$result= $db->query($query);
$num_results= $result->num_rows;
echo $num_results;
?>
已编辑(基于绘制010)
问题是这个表没有被称为测试,而是泰迪,所以放入这个代码工作。 “SELECT * FROM'teddy'”;
$db= new mysqli('localhost', $username, $password, $database);
if (mysqli_connect_errno())
{
echo 'Error: Could not connect';
exit;
}
$query = "SELECT * FROM 'teddy'";
$result = $db->query($query);
if ($result) {
$num_results = $result->num_rows;
echo $num_results;
} else {
echo "Query failed: {$db->error}\n";
}
?>
答案 0 :(得分:2)
$result= $db->query($query);
可能由于某种原因返回false。
尝试:
$query = "select * from teddy";
$result = $db->query($query);
if ($result) {
$num_results = $result->num_rows;
echo $num_results;
} else {
echo "Query failed: {$db->error}\n";
}
请参阅http://www.php.net/manual/en/mysqli.query.php#refsect1-mysqli.query-returnvalues
答案 1 :(得分:0)
我不使用mysql,但我猜是因为你正在使用mysqli_connect。请尝试使用mysql_connect
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
答案 2 :(得分:0)
@$db= mysqli_connect('localhost', $username, $password, $database);
应该是
$db= new mysqli('localhost', $username, $password, $database);