У меня есть таблица базы данных с именем «reg». Там много полей. Среди них два поля: Имя & Я БЫ. Я хочу получить конкретный идентификатор, выбрав Имя в поле выбора. Я просто знаю, что для этого подходит ajax, но я не работал с ajax. Если кто-то любезно поможет, это будет лучше для меня.
<label for="id">Instructor Name:</label><br>
<select class="form-control input-sm" name="categories" id="sel3">
<?php
$sql_sel = "SELECT * FROM reg WHERE Dept = '$Department' and Type !='Student' and Activity= 'Y' ";
$result_sel = mysqli_query($con,$sql_sel);
while ($row_sel = mysqli_fetch_array($result_sel)){
?>
<option value='<?php echo $row_sel["Name"]; ?>'>
<?php echo $row_sel['Name']; ?>
</option>
<?php
}
?>
</select>
<label for="id">Instructor ID:</label><br>
<input class="form-control input-sm" name="Instructor_id" id="inputsm" type="text" required>
назначить выбранный идентификатор имени для выбора значения поля
тогда при изменении выбора вызов ajax т.е. get -> fetchdata.php (он вернет данные пользователя)
тогда в ajax success (data) у вас будут данные как извлеченные значения
Вы должны модулировать ваш php-код в сущность типа rest-api. Это называется разделением задач и позволяет разделить код на стороне сервера и код пользовательского интерфейса. Это также помогает в разработке через тестирование.
Jquery obj предоставляет метод .ajax (), который можно использовать здесь.
Можно использовать Jquery.ajax () -or- $ .ajax ().
Итак, вы можете сделать что-то вроде этого:
$("button").click(function(){
$.ajax({url: "/path/to/rest/api", success: function(result){
$("#div1").html(result);
}});
});
<select class="form-control input-sm" name="categories" id="sel3">
<?php
$select = $con->query("SELECT * FROM reg WHERE Dept='$Department'AND Type!='Student' AND Activity='Y'");
while($row = $select->fetch_assoc()){
?>
<option value='<?php echo $row["ID"]; ?>'><?php echo $row["Name"];?></option>
<?php } ?>
</select>
Вы уверены в названиях полей? Мое мнение таково: используйте простые символы для имен полей.
Я обычно рекомендую Ajax. Но если вы не хотите использовать ajax в своем коде, это ответ для вас
Ваш код должен быть примерно таким:
function foo() {
var httpRequest = new XMLHttpRequest();
httpRequest.open('GET', "/custom/custom_url");
httpRequest.send();
return httpRequest.responseText;
}
var result = foo(); // always ends up being 'undefined'
XMLHttpRequest (XHR) — это API, который может использоваться JavaScript,
JScript, VBScript и другие языки сценариев веб-браузера для
передавать и манипулировать данными XML на и с веб-сервера, используя HTTP,
установление независимого канала связи между веб-страницами
На стороне клиента и на стороне сервера.
ИЛИ ЖЕ
Вы могли бы использовать что-то вроде этого
$ .getJSON
$.getJSON( '/custom/custom_url', { data1:"123", data2:"234"})
.done( function(resp){
// handle response here
}).fail(function(){
alert('Oooops');
});