我试图将保存在数据库中的值输出到div字段中,但是数据似乎没有出来,有人能解释一下为什么吗?
<div>
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password="root"; // Mysql password
$db_name="Database"; // Database name
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$result=mysql_query("SELECT from `posts`");
$num=mysql_numrows($result);
$i=0;
while ($i < $num) {
echo $result[$i];
$i++;
}
?>
</div>上面是div标记中的代码。所以我的问题是为什么我的回声不起作用?
发布于 2013-12-04 16:19:59
这不是实现这一目标的方法,您可以这样使用:
//$result=mysql_query("SELECT from `posts`"); <- this query is wrong.
if ($result = mysql_query("SELECT * FROM posts"))
{
$num=mysql_num_rows($result);
while ($row = mysql_fetch_assoc($result)) {
echo $row['key']; // <- you must set the field name of your query here
}
}
else // This if will show you when any query error is thrown.
{
echo mysql_error();
}您的原始查询是错误的。您可能会收到错误,因为SELECT FROM无效。您可以使用来指定字段列表、函数或获取表中所有字段的*。
您可以使用mysql_fetch_assoc()、mysql_fetch_row()或mysql_fetch_array()从查询中获取接收的数据。
此外,我在查询命令中添加了一个if,以便在查询执行中抛出任何mysql错误。用它你永远不会对这里发生的事情感到困惑。
希望能帮上忙。
UPDATE:正如@SpiderLinked所说的(谢谢老兄),mysql_numrows()并不存在。您必须使用mysql_num_rows()来获取查询结果计数。
发布于 2013-12-04 16:21:37
"SELECT from `posts`"不是有效的查询。
这将是:
"SELECT * FROM `posts`"另外,以下内容不会从数据库中提取任何结果:
while ($i < $num) {
echo $result[$i];
$i++;
}在获取结果时,需要循环它们:
while ($row = mysql_fetch_assoc($result)) {
echo $row['field'];
}发布于 2013-12-04 16:22:11
有几个错误与您的code...first....you没有把查询的结果给任何variable...second...your查询是wrong...third.没有像mysql_numrows()....here这样的函数来说明它应该是什么样子的:
<div>
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password="root"; // Mysql password
$db_name="Database"; // Database name
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$result=mysql_query("SELECT * FROM posts") or die (mysql_error()); //added die for debugging purposes
while ($num=mysql_fetch_array($result)) {
echo $num['COLUMN NAME HERE!'];
}
?>
Also...please不推荐使用mysql_ .
https://stackoverflow.com/questions/20380428
复制相似问题