Php 如何通过AJAX运行SQL select查询(实时结果)
我试图在使用SQL update函数后显示更新的SQL记录。如何使用AJAX实现这一点。在JavaScript文件中,我有一个通过AJAX工作的SQL更新函数。成功执行更新函数后,将调用异步函数。我认为Php 如何通过AJAX运行SQL select查询(实时结果),php,jquery,ajax,Php,Jquery,Ajax,我试图在使用SQL update函数后显示更新的SQL记录。如何使用AJAX实现这一点。在JavaScript文件中,我有一个通过AJAX工作的SQL更新函数。成功执行更新函数后,将调用异步函数。我认为数据属性设置不正确。启动此功能后,在页面刷新之前,不会看到任何更新。我正在尝试获取live SQL select输出 HTML:(附带php文件:prevoznik.php) 我认为应该替换数据:$('.list'),但我不知道应该在这里插入什么 $('.list').html(“新内容”)@u_
数据
属性设置不正确。启动此功能后,在页面刷新之前,不会看到任何更新。我正在尝试获取live SQL select输出
HTML:(附带php文件:prevoznik.php)
我认为应该替换数据:$('.list'),但我不知道应该在这里插入什么
$('.list').html(“新内容”)代码>@u_mulder如何打印live SQL select语句而不是“新内容”。这是我的问题。似乎有点正常,但是这个脚本循环附加,就像整个页面发生多次重复一样。如果您只想显示最后一个结果,可以使用.html
而不是。append
,我尝试使用html,但同样的情况也会发生。它使整个网站循环了100次。是否应将.list更改为其他内容?.html
用您提供的字符串替换div的当前内容。如果显示100次,则表示您的php文件循环了100次。你的while循环正确吗?是的,我的while循环正确。但奇怪的是,它会循环整个页面,而不是只循环SQL select部分。
<div class="row pt-5">
<div class="col-12 ff-nu fs-16 fw-600">Izgled za prevoznika
<div class="row pt-3" id="prevoznik">
<div class="col-12 list-widget">
<div class="row divider-heading uppercase py-3">
<div class="col-1 fs-09 fw-600">id</div>
<div class="col-3 flex-vcenter-items fw-600 fs-09">naslov</div>
<div class="col-1 flex-vcenter-items fw-600 fs-09">ura</div>
</div>
<?php require 'includes/prevoznik.php'; ?>
</div>
</div>
</div>
</div>
</div>
$sql3 = "
SELECT id, potnik_id, ura, naslov
FROM prevoznik
ORDER BY HOUR(ura), MINUTE(ura) ASC;
";
$result = $conn->query($sql3);
$potnik = $row["potnik"];
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
//Spremenjena oblika datuma
$date = date_create($row["ura"]);
$ura_pobiranja = date_format($date,"H:i");
echo "<div class=\"row list divider-gray\">
<div class=\"col-1 fs-09 fw-600\">" . $row["id"] . " </div>
<div class=\"col-3 flex-vcenter-items fw-600 fs-09\">" . $row["naslov"] . " </div>
<div class=\"col-1 flex-vcenter-items fw-600 fs-09\">$ura_pobiranja</div>
";
if ($row["naslov"] !== null) {
echo " <div class=\"col-6 flex-vcenter-items fs-1\">
<form id='form' action='' method='POST'>
<input id='id' name='potnik' value='".$row["id"]."' type='hidden' />
<input id='cas' class=\"form-control fancy-border\" type=\"text\" name=\"posodobljeni_cas\"/>
<input class='btn btn-outline-primary' id='submit' type='submit' value='Nastavi uro'>
<label id=\"info\"></label>
</form>
</div>";
echo " </div>";//update.php?id=" . $row["id"] . "
}
else {
echo " </div>";
}
}
} else {
echo "<div class=\"col flex-vcenter-items fw-100 fs-1\"><i class=\"far fa-frown-open pr-3\"></i>Nimaš še nobenih opravil
</div>";
}
//Async update
$(function () {
$('#form').on('submit', function (e) {
let idrow = $("#id").val();
let updaterow = "update.php?id=";
console.log(updaterow + idrow);
e.preventDefault();
$.ajax({
type: 'post',
url: updaterow + idrow,
data: $('#form').serialize(),
success: function () {
console.log('ura posodobljena');
//Async select update
$.ajax({
type: 'post',
url: 'prevoznik.php',
data: $('.list'),
success: function () {
console.log('Select izveden');
}
});
}
});
});
});
});
$.ajax({
type: 'post',
url: 'prevoznik.php',
data: $('.list')
}).done(function(data) {
console.log('Select izveden');
$('.list').append(data)
});