2011-03-20 66 views
0

我有下面的代碼片段,其中我想從SMSGateway抓住所有條目,並放置在我的網頁組合框:輸出的MySQL查詢結果組合框

<?php 
$querycarrier="SELECT * from 'SMSGateway'"; 
$resultcarrier=mysql_query($querycarrier); 
if (!$resultcarrier) { 
die('Invalid query: ' . mysql_error()); 
} 
while($rowcarrier = mysql_fetch_array($resultcarrier)){ 
    echo "<option value=$rowcarrier[GatewayName]</option>"; 
} 
?> 

目前,SMSGateway表是空的。所以,當我認爲有問題的網頁,我收到以下錯誤:

Invalid query: You have an error in your SQL syntax; check the manual that corresponds to 
your MySQL server version for the right syntax to use near ''SMSGateway'' at line 1 

我怎樣才能確保被拋出的錯誤,因爲該表是空的?

非常感謝您的幫助和指導。

+0

嘗試取消引用表名稱。我知道它是不必要的,不知道是否會造成問題。它的價值嘗試我 – 2011-03-20 22:57:37

回答

4
$querycarrier="SELECT * from SMSGateway"; 

刪除單引號 - 如果你需要從1個鍵盤

1

左的東西用`字符周圍表名刪除單引號。

編輯。當你不在選項值周圍使用引號時,請小心,選項包含空格。文本將被截斷爲第一個單詞。

這是更安全和更正確的語法。

echo "<option value=\"$rowcarrier[GatewayName]\"</option>"; 
+0

我總是來不及。該死的人類驗證:) – 2011-03-20 22:57:14

+1

歡迎在俱樂部 - 但今天我得到了幾秒快:) :) – bensiu 2011-03-20 22:58:18

+0

嗨bensiu。你總是先來;) – 2011-03-20 23:02:57