Php 提交后刷新表单

Php 提交后刷新表单,php,mysql,html,Php,Mysql,Html,下面的表单可以包含文本字段、下拉框和选择框的不同元素,允许用户更新其个人资料。表单提交后,将完成更新MySQL字段的过程 <form method="post"> My Name: <input name="myname" type="text" value="<?php echo $_SESSION['SESS_MY_NAME']; ?>" /><br /> My Email: <input name="email" type="text"

下面的表单可以包含文本字段、下拉框和选择框的不同元素,允许用户更新其个人资料。表单提交后,将完成更新MySQL字段的过程

<form method="post">
My Name: <input name="myname" type="text" value="<?php echo $_SESSION['SESS_MY_NAME']; ?>" /><br />
My Email: <input name="email" type="text" value="<?php echo $_SESSION['SESS_EMAIL']; ?>" /><br />
    <input type="submit" name="Submit" value="Update" />

<?php
if (isset($_POST['Submit'])) {
    // MySQL update
    ;
    ;
    ;
    $result=mysql_query($sql);
  }

// if successfully updated, make form refresh. 
  if($result){
    ;
    ;
    ;
  }
?> 
</form>

我的名字:将
isset($\u POST['submit'])
检查移到顶部

您当前(预期)的流程如下:

  • 从DB/Session/etc检索表单数据
  • 显示为HTML
  • 用户提交表单
  • 重复步骤1/2
  • 将数据写入数据库
  • 强制刷新
  • 重复1/2次
  • 如果将此支票移至顶部,则流程将更改为:

  • 从数据库中检索表单数据
  • 显示为HTML
  • 用户提交表单
  • 将数据写入数据库
  • 重复1/2(它现在将检索更新的信息并正确显示)

  • 这是你能做到的最简单的方法。它不考虑Post/Redirect/Get或更新会话,因此不需要多次读取数据库,等等。

    为什么不使用jQuery AJAX提交和验证表单,然后在所选的div元素中输出结果呢。
    有关这方面的更多信息,请访问。太棒了

    谢天谢地,在谷歌搜索了一番之后,我自己解决了这个问题,因为似乎没有其他人知道答案。对于希望完成相同任务的任何人,您只需将以下代码添加到CF7表单配置的“附加设置”部分:

    发送时\u确定:“位置=”;


    只需将URL替换为表单页面的URL,并且在提交表单时,它会自动刷新回该页面

    您的意思是要提交表单而不发送新的HTTP头,从而强制加载页面吗?这就是所谓的AJAX。关于这个问题,有很多重复的问题。是的,你需要使用JavaScript来完成你描述的目标。PHP本身并不能解决这个问题。它是否只是一个使用Ajax/Javascript的单行代码解决方案?你能解释一下吗?@user131569你想让我们给你一个关于服务器端脚本和客户端脚本如何工作的教程吗?这可能不会发生。阅读我上面链接的帖子。