即时问题
为什么什么都没有显示?很可能您有一个 SQL 错误。但是你不会在任何地方打印它。
使用 PHP 显示 mysql 错误
//this is a bad query, this time it is intentional
$sql = mysql_query('SELECT tasks FROM tasks WHERE check="1"');
if($sql)
{
//do processing here, no error
while($row = mysql_fetch_array($sql))
{
echo $row['tasks'];
echo "<br />";
}
}
else
{
//output error, or handle it in any other way you like
echo mysql_error();
}
你的问题很可能是引用 -更新:在多个级别上:
1级
"
SQL 语句中不能使用双引号。'
对字符串常量使用单引号,`
对封闭对象名称(表、列等)使用反引号
交换报价:
$sql = mysql_query("SELECT tasks FROM tasks WHERE check='1'");
转义语录:
$sql = mysql_query('SELECT tasks FROM tasks WHERE check=\'1\'');
只有数值,没有任何类型转换:
$sql = mysql_query('SELECT tasks FROM tasks WHERE check=1');
2级
MySQL 中保留check
关键字的事实也无济于事。您可以使用它来识别对象,但要注意:正确括在反引号 ( ) 中:`
$sql = mysql_query('SELECT tasks FROM tasks WHERE `check`=1');
强烈考虑
mysql_*
一劳永逸地留下。已弃用!不安全!这里是龙!
- 阅读SQL 注入。这在任何一天都可能是坏消息。