我是使用php mysql的初学者,基本上我想做的是在index.php上提交表单,将其插入mysql中的数据,然后查询并在另一个php中存储2-3个相同数据的列值文件中说data.php。现在,我已经将data.php包含在index.php中,并且每次提交时都希望重新加载data.php并在index.php的数据表中显示来自同一数据的最新值。
长话短说,重新提交一个包含php文件的包含php按钮的变量,以在提交表单后每次显示最新值。下面是代码
<?php
include("data.php");
?>
<html>
<form id="signupform"></form>
<button onclick="postdata()"></button>
<table>
<tr>
<td>var1 in data.php:</td> <td>value of var1</td>
</tr>
<tr>
<td>var2 in data.php:</td> <td>value of var2</td>
</tr>
</table>
<script>
function postdata() {
var data = $("#signupform").serialize();
$.post('submit.php', data, function(data,status){
console.log("");
});
document.getElementById("var1").innerHTML = '<?php echo $var1; ?>' ;
document.getElementById("var2").innerHTML = '<?php echo $var2; ?>' ;
</script>
</html>
答案 0 :(得分:1)
如果其形式为action =“ time.php”,则在插入数据后在time.php页面上使用header(“ location:index.php”);
答案 1 :(得分:0)
PHP代码为server-side code,该代码在页面实际发送到浏览器之前完成执行。这实际上意味着用户在执行诸如单击按钮之类的操作时无法执行php代码。
实际上有两种解决方案可从包含的php文件中“重新加载”数据:
发布表单数据后重新加载整个页面:
$.post('submit.php', data, function(data,status){
console.log("");
window.location.reload();
});
或者在您的帖子提交后,用Jquery提取另一个PHP文件的输出(假定为data.php),然后将结果插入DOM:
$.post('submit.php', data, function(data,status){
console.log("");
$.ajax({
url: "url/to/data.php",
method: "get",
success: function(output){
$("#html-element-id-here").html(output);
}
})
});