$value = mysql_result(mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever'"), 0);
這有效,但我只是不知道這樣做是否「正確」。它是潦草的編碼?如果是這樣,是否有更好的方法來獲得單一的價值?這是一個有效的查詢從MySQL獲取單個值?
$value = mysql_result(mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever'"), 0);
這有效,但我只是不知道這樣做是否「正確」。它是潦草的編碼?如果是這樣,是否有更好的方法來獲得單一的價值?這是一個有效的查詢從MySQL獲取單個值?
我沒有看到這個問題。此外,如果您只想要返回一行,則可以在末尾添加LIMIT 1
。
我會說這個懶惰的編碼 - 你沒有檢查錯誤。如果SQL中存在錯誤或數據庫關閉,這可能會導致混淆錯誤消息。最好明確檢查錯誤並提供有用的錯誤信息,而不是讓程序爆炸。
$result = mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever'")
if (!result) {
trigger_error(mysql_error($result));
}
你會怎麼建議?在一個while循環? – Oseer
更好
$value = mysql_result(mysql_query("SELECT the_field
FROM the_table
WHERE other_field = 'whatever' LIMIT 1"), 0);
這是通常的方式。你指的是什麼「適當的」? – wallyk
我只是沒有看到它做得很多,我想確定它是有效的。 – Oseer