Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
提交PHP表单后如何显示成功消息?_Php_Ajax_Forms_Redirect_Post - Fatal编程技术网

提交PHP表单后如何显示成功消息?

提交PHP表单后如何显示成功消息?,php,ajax,forms,redirect,post,Php,Ajax,Forms,Redirect,Post,这是代码。我想这样-- 表单提交-->page2.php-->重定向-->page1.php(以下是消息。弹出窗口或其他内容) page1.php <form action="page2.php" method="post" enctype="multipart/form-data" class="form-inline subscribe-form"> <input type="name" name="name" placeholde

这是代码。我想这样--

表单提交-->page2.php-->重定向-->page1.php(以下是消息。弹出窗口或其他内容)

page1.php

<form action="page2.php" method="post" enctype="multipart/form-data" class="form-inline subscribe-form">

                    <input type="name" name="name" placeholder="Jack">
                </div>
                <button type="submit" name="sub" value="sub" >Submit</button>

            </form>

提交
page2.php

    <?php
//include necessary

if(isset($_POST['sub'])) {

    $nameget = mysqli_real_escape_string($dbconnect, $_POST['name']);
    $sqlentry = .....bla bla......//insert into DB
}

$getsql = mysqli_query($dbconnect, $);


if($getsql){
    mysql_close($dbconnect);
    header('location:page1.php');

}



?>

您有:

header('location:page1.php');
在位置上追加一个变量,如:

header('location:page1.php?status=success');
在page1.php上,执行以下操作:

if( $_GET['status'] == 'success'):
    echo 'feedback message goes here';
endif;

这样,刷新后,您的flash消息不会一次又一次地显示

<?php session_start();
if(isset($_SESSION['msg']) && $_SESSION['msg'] != ''){
    echo $_SESSION['msg'];
    unset($_SESSION['msg']);
}
?>
    <form action="page2.php" method="post" 
enctype="multipart/form-data" class="form-inline subscribe-form">

                    <input type="name" name="name" placeholder="Jack">
                </div>
                <button type="submit" name="sub" value="sub" >Submit</button>    


           </form>

提交



也许可以通过url将成功消息传递到page1.php?这很好。成功了,谢谢。但是,当我刷新“page1.php?status=success”页面时,有没有办法转到“page1.php”?当然,这取决于你想要什么。。可以将状态存储在会话中,也可以使用javascript执行简单的重定向,或者在链接到page1.php的警报或模式窗口中显示反馈。不要忘记取消设置$\u会话消息,否则在页面刷新后它仍然会在那里。还可以在顶部添加一个检查$\u会话['msg'],并使用isset()语句,否则将抛出错误!是的,当然。。添加了相同的内容。稍微编辑一下您的答案:)
<?php
session_start();
//include necessary

if(isset($_POST['sub'])) {

    $nameget = mysqli_real_escape_string($dbconnect, $_POST['name']);
    $sqlentry = .....bla bla......//insert into DB
}

$getsql = mysqli_query($dbconnect, $);
  if($getsql){
        mysql_close($dbconnect);
        $_SESSIOM['msg'] = 'Value Inserted or whatever';
        header('location:page1.php');        
    } 
?>