$value = mysql_result(mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever'"), 0);
这有效,但我不知道这样做是否“合适”。是编纂编码吗?如果是这样,有没有更好的方法来获得一个单一的价值?
答案 0 :(得分:2)
我称之为懒惰编码 - 您没有检查错误。如果SQL中存在错误或数据库已关闭,这可能会导致错误消息混淆。最好是明确检查错误并提供有用的错误消息,而不是让程序爆炸。
$result = mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever'")
if (!result) {
trigger_error(mysql_error($result));
}
答案 1 :(得分:1)
更好
$value = mysql_result(mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever' LIMIT 1"), 0);
答案 2 :(得分:0)
我认为这没有错。此外,如果您只需要返回一行,则可以在末尾添加LIMIT 1
。