2016-12-05 2 views
0

У меня проблема с использованием SQL-запроса в PHP, я пытался выяснить, что не так в моем коде, так или иначе этот код хорошо работает в SQL-запросе через phpMyAdmin и корректно отображает результатSQL-запрос в PHP не работает

Когда я использую условие WHERE RoomNo = «D003» или любой номер No. (я пытался как «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, возможно, посмотреть, как он оценивает строки и что с ними делать? –