У меня есть <select>
только с одной опцией, я хочу получить остальные опции из базы данных, используя PHP, а затем заполнить <select>
результатом PHP, используя AJAX.
К сожалению, мой код не работает, я не удивлен, так как я новичок в AJAX и jQuery, но я не получаю никаких ошибок, чтобы разобраться с этой проблемой.
PHP работает как и ожидалось, потому что он используется в другой части сайта, и у меня нет проблем с ним, поэтому моя ошибка должна быть в AJAX (здесь нет ничего удивительного).
Ниже моего HTML:
<select class="custom-select my-1 mr-sm-2" id="producto" name="producto" required>
<option disabled selected value>Elegir...</option>
</select>
Ниже моего AJAX кода:
<script type="text/javascript">
$(document).ready(function() {
$("#producto").click(function() {
$.ajax({
url: 'fetch_lista_productos_compra.php',
type: 'get',
success: function(data) {
$("#producto").append(data);
}
});
});
});
</script>
Ниже моего PHP кода:
<?php
require $_SERVER['DOCUMENT_ROOT'].'/testground/php/db_key.php';
$conn = mysqli_connect($servername, $username, $password, $dbname);
$sql_query = mysqli_query($conn, "SELECT * FROM productos WHERE disponibilidad = 'disponible'");
while ($row = mysqli_fetch_assoc($sql_query)) {
$titulo = $row['titulo'];
echo <<<EOT
<option value="$titulo">$titulo</option>\n
EOT;
}
?>
Как всегда, любая помощь очень приветствуется, и спасибо за ваше время.
ВАЖНОЕ РЕДАКТИРОВАНИЕ
<select>
имеет дублированный идентификатор, возможно, я должен был заявить об этом с самого начала, так как знаю, что это и стало причиной моей проблемы .
Дело в том, что в этом <form>
выборки создаются динамически по запросу пользователя. Они нажимают на Добавить продукт , и создается новый выбор с доступными продуктами, я знаю, что идентификатор / имя указанного ввода должны иметь [] (id="producto[]"
), чтобы оно было преобразован в массив, но я не знаю, как заставить AJAX справиться с этой динамически созданной повторяющейся проблемой выбора . Я прошу прощения за это запоздалое восклицание, которое я понимаю, теперь это имеет огромное значение.