我有一个包含表单的页面。当用户单击按钮选择一个选项时,它会显示选择选项,并运行updatephp.php,它有查询更新。我需要动态更新选择并显示成功/错误消息,如"更新"或"没有结果"在屏幕上我该如何实现这一目标。我不是很擅长ajax,有人可以指导我。
displaytable.php
<form method="POST" action="choosecake.php">
<select id="bakeryid" name="bakeryid">
<option value="">Select</option>
<?php
$sql = "SELECT bakeryid, datefrom FROM cakes";
$sqlresult = $link->query($sql);
$sqllist = array();
if(mysqli_num_rows($sqlresult) > 0) {
while($row = mysqli_fetch_array($sqlresult))
{
echo "<option value=".$row['bakeryid'].">".$row['datefrom']."</option>";
}
$sqlencode = json_encode($sqllist);
echo $sqlencode;
} else {
echo 'No Results were found';
}
?>
</select>
<input type="hidden" value="<?php echo $bakeryid;?>" name="bakeryid"/>
<input type="submit" value="Submit" name="submit"/>
</form>
答案 0 :(得分:0)
更改您的displaytable.php
并生成一组蛋糕,其中ID为键,名称为值。然后回显json编码的数组,可以直接在js中使用。
只是为了感受,没有测试它。
$(document).ready(function() {
window.setTimeout(function() {
$.ajax({
url: "/displaytable.php"
}).done(function(data) {
var select = $('#selectId');
select.empty();
$.each(data, function(val, key) {
select.append($("<option></option>").attr("value", key).text(val);
});
});
}, 10000); // 10 seconds update interval
});
答案 1 :(得分:0)
如果您的页面必须刷新(没有ajax),请使用displaytable.php来处理表单提交。然后定义一个变量来保存您的成功或错误消息,并将此变量放在您希望显示消息的位置,例如
if(!empty($success_message)) {
echo "<h2>$success_message</h2>";
}
提交表单时,只需为$success_message
分配一个值,由于处理表单提交的脚本与包含表单的脚本相同,因此上面代码中的echo语句将显示您的消息。页面重新加载。