Php 用ajax从数据库获取数据
嘿,伙计们,我知道这个问题被问了很多次,这是我第一次遇到问题,我需要从数据库中获取数据,但它不工作,控制台中也没有错误。我不能让它工作,因为某些原因,我有一切设置正确,我的ajax是好的,我想 这是我的html:Php 用ajax从数据库获取数据,php,jquery,ajax,Php,Jquery,Ajax,嘿,伙计们,我知道这个问题被问了很多次,这是我第一次遇到问题,我需要从数据库中获取数据,但它不工作,控制台中也没有错误。我不能让它工作,因为某些原因,我有一切设置正确,我的ajax是好的,我想 这是我的html: <div class="form-group"> <label> Event</label> <?php $event = $con->prepare('SELECT * FROM event'); $ev
<div class="form-group">
<label> Event</label>
<?php
$event = $con->prepare('SELECT * FROM event');
$event->execute();
$eventrows = $event->fetchAll();
?>
<select class="form-control" id="event" name="event_id">
<?php
foreach ($eventrows AS $eventrow) {
?>
<option
value="<?php echo $eventrow['EventID']; ?>"><?php echo $eventrow['EventName']; ?></option>
<?php } ?>
</select>
</div>
<div class="form-group">
<label> Level</label>
<select class="form-control" id="level" name="level_id">
</select>
</div>
事件
数量
我的阿贾克斯
<script>
$(document).ready(function() {
$('#event').change(function() {
var event_id = $(this).children(":selected").val();
$.post("get_level.php", {
event_id: event_id
}, function(data, status) {
console.log(status);
if (status == 'success') {
var loopdata = JSON.parse(data);
$('#level').html('')
$.each(loopdata, function(i, item) {
$('#level').append("<option value='" + loopdata[i].LevelID + "'>" + loopdata[i].LevelName + "</option>");
});
console.log(data);
}
});
});
});
</script>
$(文档).ready(函数(){
$('#事件')。更改(函数(){
var event_id=$(this).children(“:selected”).val();
$.post(“get_level.php”{
事件id:事件id
},功能(数据、状态){
控制台日志(状态);
如果(状态=‘成功’){
var loopdata=JSON.parse(数据);
$('#level').html('')
$。每个(循环数据、函数(i、项){
$('#level').append(“+loopdata[i].LevelName+”);
});
控制台日志(数据);
}
});
});
});
get_level.php
<?php
session_start();
include 'connect.php';
$reg = $con->prepare("SELECT * FROM Level WHERE EventID = '".$_POST['event_id']."'");
$reg->execute(array());
$allreg=$reg->fetchAll();
echo json_encode($allreg); // pass array in json_encode
?>
$(文档).ready(函数(){
$('#事件')。更改(函数(){
var event_id=$(this.val();
$.post(“get_level.php”{
事件id:事件id
}(“json”)
.done(函数(循环数据){
$('#level').html('')
$。每个(循环数据、函数(i、项){
$('#level')。追加(“+item.LevelName+”);
});
});
});
});
代码中没有问题,但代码的位置,ajax不起作用的原因是,它应该是页面中包含页脚后的最后一件事,因为页脚有jQuery includes您在浏览器的开发人员控制台或开发人员控制台的“签入网络”选项卡中遇到了什么错误……控制台是否显示了任何错误?是否启用了PHP错误报告?请添加来自get\u level.PHP
的示例响应。您确实需要在此处添加一些解释。不要只转储代码,希望我们知道发生了什么事,所以现在我们知道我们正在发送正确的变量值。但仍然是个问题。进入下一部分:您是否验证了查询是否成功?例如,您还没有回答我关于数据类型的问题,或者您得到了什么HTTP响应。在你检查之前,我不能确定你是否检查正确,或者根本没有。如果你直接回答所有问题,我们会更快到达那里。因为?添加一个解释,仅仅是一堆代码对任何人都没有用,我们不知道你改变了什么,或者更重要的是,为什么。
$(document).ready(function() {
$('#event').change(function() {
var event_id = $(this).val();
$.post("get_level.php", {
event_id: event_id
}, 'json')
.done(function(loopdata) {
$('#level').html('')
$.each(loopdata, function(i, item) {
$('#level').append("<option value='" + item.LevelID + "'>" + item.LevelName + "</option>");
});
});
});
});