Я имею проблему изменяющуюся варианты выбери, основанную на опции другого выбора х, ниже приведен код, который работает:проблем с несколько Котировки в JavaScript
dropdown2.innerHTML = "<?php echo($SQLFormElements->GetColumnAsOptions('SELECT `field2` FROM `table2` WHERE `field1` = \'8\' ')); ?>";
Объяснение:
У меня есть два таблицы базы данных: table1
и table2
. table1
имеет field1
. table2
имеет поля field2
и field1
. SQLFormElements
- это php-файл, который выводит элементы html на основе запросов mysql, в данном случае, для элемента select. dropdown1
содержит field1
значения. dropdown2
должен отображать значения field2
на основании значения field1
, то есть выбранного элемента dropdown1
.
В любом случае, приведенный выше код работает отлично, однако я уже зашиты в отличие от получения значения, потому что, когда я делаю что-то вроде этого:
var selectedItem = document.getElementById("ddField1");
dropdown2.innerHTML = "<?php echo($SQLFormElements->GetColumnAsOptions('SELECT `field2` FROM `table2` WHERE `field1` = \'" + selectedItem + "\' ')); ?>";
он не работает, ни малейшего представления, почему !? Я немного тупой. Напомним, первый фрагмент кода работает.
Я попробовал следующее:
- разбор переменного как Integer (field1 в моей таблице целочисленного типа)
- выходя из цитаты в пункте где
- выезда из-за котировок, но жесткое кодирование значения в рабочем документе where
Потенциально имеют огромную уязвимость SQL Injection. Никогда не используйте незащищенные пользовательские значения непосредственно в коде SQL! – asawyer
Это не проблема с кавычками, вы жутко пытаетесь смешать JavaScript с PHP. Подумайте, когда и где (по какому) исполнению каждый из них. Решение называется «AJAX», вы найдете много информации об этом в Интернете. – Bergi
Я знаю Ajax, но я только начал изучать PHP и JavaScript. Таким образом, изучение Ajax является своеобразным задним сиденьем прямо сейчас. Но если мне это нужно, я думаю, мне нужно идти по этому пути –