确认表格重新提交(重复,但我无法解决)

时间:2017-01-17 14:57:47

标签: php html post

我有 Test.php

<?php
if(isset($_POST['input'])){
    $c=mysqli_connect('localhost','root','','controlo');
    $input=$_POST['input'];
    mysqli_query($c,"insert into`vsv 1`(`Nome`)values('$input')");
}
?>
<html>
    <body>
        <form action=Test.php method=post>
            <input name=input>
            <input type=submit>
        </form>
    </body>
</html>

它有效,但我在刷新时收到“确认表格重新提交”的消息。 那里有很多答案,但我仍然没有弄清楚如何防止这种情况发生。

编辑(解决方案):

不知何故,我遇到了一些错误,但实际上这确实有效:

<?php
if(isset($_POST['input'])){
    $c=mysqli_connect('localhost','root','','controlo');
    $input=$_POST['input'];
    mysqli_query($c,"insert into`vsv 1`(`Nome`)values('$input')");
    header("Location:Test.php");
}
?>
<html>
    <body>
        <form action=Test.php method=post>
            <input name=input>
            <input type=submit>
        </form>
    </body>
</html>

3 个答案:

答案 0 :(得分:1)

您可以重定向到任何其他页面或同一页面

header("Location:page.php");

答案 1 :(得分:0)

浏览器显示“确认表单重新提交”,因为您已在上一页提交了表单。 您想要的是单击地址栏并按Enter键以正确刷新页面。

答案 2 :(得分:0)

当发送POST数据时,浏览器会自动警告用户有关表单重新提交的信息。要修复&#34;这样,您必须使用header - 函数将用户重定向到甚至同一页面。

header("Location: your.php");