如何在表单提交上刷新php页面?
我的问题是在如何在表单提交上刷新php页面?,php,html,forms,Php,Html,Forms,我的问题是在php页面中提交表单元素后,页面不会刷新。这是我的密码 <?php session_start(); include('db.php'); include('pages.php'); ?> 表单元素 <form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "POST"> <table style="width:70%"> &
php
页面中提交表单元素后,页面不会刷新。这是我的密码
<?php
session_start();
include('db.php');
include('pages.php');
?>
表单元素
<form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "POST">
<table style="width:70%">
<tr>
<td width="10%">First Name</td>
<td width="20%"><input style="border-radius: 4px; border: 2px solid gray; height: 20px; width: 180px;" type="text" name="fname" value="<?php echo $f_name;?>"></td>
</tr>
<input style="border-radius: 5px; width: 100px; height: 25px;" type="submit" name="account_update" value="Update"/></td>
</table>
</form>
if(isset($_POST['account_update']) && $_POST['account_update'] == 'Update'){
$fname_edit = $_POST['fname'];
$sql = $db->prepare("SELECT * from table where email = ?");
$sql->bind_param("s",$email);
$sql->execute();
$sql = $sql->get_result();
if(($getRowCount = $sql->num_rows) == 1){
$updateQuery = $db->prepare("UPDATE info set first_name=? where email = ?");
$updateQuery->bind_param("ss",$fname_edit,$email);
$updateQuery->execute();
}
}
?>
您可以将用户重定向到当前文件。之后:
$updateQuery->execute();
加:
这将在执行查询后将用户重定向到此文件。//刷新页面
// REFRESH PAGE
echo "<meta http-equiv='refresh' content='0'>";
回声“;
我没有看到任何与重定向相关的代码。您很可能在页眉之前输出。这是在哪里定义的<代码>$email
。我所看到的只是$fname\u edit
和不支持$\u POST['fname']
数组的内容。似乎缺少检查您是否在标题前输出错误报告,或者如果遇到其他问题,请检查。您需要在成功查询时放置重定向代码,并且不知道您到底在哪里使用它。也许我不正确,但是您使用JS刷新,而不是PHPI刷新。您不认为您得到了问题。他们很可能已经在另一个文件中的代码中使用了它。@Fred ii-好吧,我在当前文件中没有看到重定向,所以我只是添加了,因为我认为这应该可以解决问题。。。或者我还是不明白这个问题。这就是我在他们的问题下告诉OP的。我担心可能会出现各种错误/问题。我认为他们在头球前输出,但没有检查错误。@BishwaroopChakraborty那么你只是根据给出的“答案”回答我们吗?我在你的问题下发表了不少评论,但没有回应。“这不管用”对任何人来说都不算什么。因此,我现在将不作评论地转达这一点。祝你好运,我出局了。@BishwaroopChakraborty你应该提供当前表单文件的完整代码,因为它不太清楚(除了可能建议使用header(),header已经发送并刷新meta http equiv)。虽然这段代码可以回答这个问题,提供关于如何和/或为什么解决问题的附加上下文将提高答案的长期价值。
// REFRESH PAGE
echo "<meta http-equiv='refresh' content='0'>";