表单提交后重定向到同一页面中的锚点

朱利安

我有一个带有登录页面的网站,在页面底部有一个表单。我要做的就是显示验证消息,然后再次将用户重定向到表单,这样他就可以查看该消息而无需滚动。

代码如下(位于同一页上):

  //validation
      if (isset($_POST['submit'])) {                     
          $name = htmlspecialchars(stripslashes(trim($_POST['name'])));

          if (!preg_match("/^[A-Za-zÀ-ÖØ-öø-ÿ]/", $name)) {
              $name_error = 'invalid name';
          }
         //i want to redirect as soon as the validation finishes
        header('Location: http://localhost/myweb/index.php#contact');
      } 

<form id="form" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST">
  <input  type="text" name="name" id="name"> 
     <button type="submit" id="submit" name="submit">Send</button>
</form>

我已经尝试了以下所有方法:

  • 使用window.location.href = 'index.php#contact';在按钮(onclick)和形式(onsubmit
  • 使用的header代码的多个部分,也与exit();

但是,这是关键,我不想仅将php的另一页用于验证(因为我将需要使用session_start()并且希望避免cookie)并且我不想使用AJAX XMLHttp Request。

有可能做到吗?

buffy.cz

我使用#contact在表单动作像这样

<form id="form" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>#contact" method="POST">

你有尝试过吗?

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Servlet重定向到同一页面,并显示错误消息

删除无法正常工作并重定向到同一页面-Laravel

NodeJ中的中间件总是重定向到同一页面(我想)

如何在PHP中重定向到同一页面,但没有某些参数?

烧瓶:提交表单后重定向到同一页面

如何使用URL中的$ _GET参数重定向到同一页面

点击重定向到其他商店的同一页面

用锚点提交到同一页面

多语言重定向URL到同一页面

重定向到Django中的同一页面

POST请求后如何重定向到同一页面

注销后重定向到同一页面

表单提交并重定向到同一页面,没有重新渲染

重定向到另一个文件夹中的同一页面

Asp.net mvc登录后重定向到同一页面

Magento上的联系表单重定向到同一页面

登录后将用户重定向到同一页面

仅当用户重定向到同一页面时才显示Div

成功提交表单并在确认消息上单击“确定”后,重定向到同一页面

将提交按钮重定向到同一页面

当iframe页面刷新时,它重定向到主页而不是同一页面

提交表单后,停留在同一页面,在页面中显示一个单词

使用 HttpPost 方法提交表单后 ASP.NET Core 重定向到同一页面

在 Codeigniter 中切换语言后重定向到同一页面

html表单按钮重定向到同一页面

更改密码不断重定向到同一页面

事件发生后如何使页面重定向到同一页面

django的“重定向”功能不是,提交表单后,用户保持在同一页面上

如何在 django 中的表单操作后重定向到同一页面