Я использовал приведенный ниже код, чтобы получить данные или параметры в моем раскрывающемся списке из mysql db. также он работает нормально, но моя проблема в том, что когда я выбираю конкретный вариант из этого раскрывающегося списка, при отправке для этого поля не сохраняется значение или пустое значение. просто я вижу имя параметра, но значение похоже на это
value = " ";
на самом деле значение - это то, что я вижу как имя опции.
<strong> Select Data </strong>
<select name = "data1">
<option value = ""> NONE </option>
<?php
//Mysql db connection
$con = mysqli_connect("localhost", "my_user", "my_password", "my_db");
//Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
//Perform queries
$rs = mysqli_query($con, "SELECT DISTINCT relation FROM relation_names");
if ($rs && mysqli_num_rows($rs)) {
while ($rd = mysqli_fetch_object($rs)) {
echo("<option value='$rd->id'>$rd->relation</option>");
}
}
mysqli_close($con);
?>
</select>
проголосовать за закрытие как опечатку
@Faisal TA Добавьте id в свой оператор SELECT, и это должно хорошо работать в вашем случае. Я уверен, что вы также знаете, что добавление * также выберет все столбцы в таблице mySQL.
это работает нормально, но теперь я получаю идентификатор как значения, но мне нужно то, что я видел как параметр, как значения, а не идентификатор.
понял и спасибо за все






также добавить id в запрос
$rs = mysqli_query($con,"SELECT DISTINCT relation,id FROM relation_names");
Только тогда
$rd->id
заполнит правильное значение
Если вы хотите, чтобы отношение было значением, сделайте следующее:
echo("<option value='$rd->relation'>$rd->relation</option>");
это работает нормально, но теперь я получаю идентификатор как значения, но мне нужно то, что я видел как параметр, как значения, а не идентификатор.
просто добавьте идентификатор в свой запрос, и он должен работать, как ожидалось.
SELECT DISTINCT relation,id FROM relation_names.