2016-12-05 113 views
0

我在PHP中使用SQL查詢有一個問題,我試圖找出我的代碼有什麼問題,無論如何,這段代碼在通過phpMyAdmin的SQL查詢中工作良好,並正確顯示結果在PHP中的SQL查詢語句不起作用

當我使用條件WHERE RoomNo =「D003」或房號(我想這兩個「D003」和「D003」),它不會在所有

查詢什麼,請幫助。

這裏是我的代碼

onclick = "javascript: openListOfValue('ADD_LINE','Room','Select RoomNo, RoomType FROM Room WHERE RoomNo ="D003"','RoomNo,RoomType'); 

<script> 
function openListOfValue(mode, table, initSQL, columnname){ 
    window.open("listofvalue.php?mode="+mode+"&table="+table+"&initSQL="+initSQL+"&columnname="+columnname,"popup","width=600,height=350"); 
} 
</script> 
+1

'RoomNo =「D003」」,' - >見的報價,你可以用一個反斜槓躲開他們。你確定要允許'listofvalue.php'來執行客戶端需要的每個查詢嗎?我希望你不要。 – Federkun

回答

0

SQL字符串文字與單引號括起來。

由於您的HTML字符串文字使用雙引號,因此您正在爲您的Javascript字符串文字使用單引號。爲了在這個字符串中有單引號,你必須轉義它們。在Javascript中使用反斜槓逃逸單引號:

onclick = "javascript: openListOfValue('ADD_LINE','Room', 
    'Select RoomNo, RoomType FROM Room WHERE RoomNo = \'D003\'','RoomNo,RoomType');" 
+0

謝謝,Thorsten Kettner 我已經嘗試過,但它的工作,但結果是「未找到數據」 (窗口正確彈出,但搜索結果未找到) 接下來應該做什麼? – novez

+0

我不知道。調試你的listofvalue.php也許看看它如何評估字符串以及它如何處理它們? –