【问题标题】:Jump to HTML anchor automatically when PHP form submitsPHP 表单提交时自动跳转到 HTML 锚点
【发布时间】:2014-08-27 15:45:26
【问题描述】:

我正在尝试将表单添加到我的索引页面中,这样当您单击提交时,它会在页面重新加载时自动返回到表单。现在,如果页面上有任何错误,它会在表单上方显示它们并给出一点感谢信息。

我目前有以下 index.html 页面:

<?php
    include "check.php";
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
    Name:<br/> <input type="text" name="name" value="<?php echo $_POST['name']; ?>" size="30" /><br/><br/>
    Email Address:<br/> <input type="text" name="email" value="<?php echo $_POST['email']; ?>" size="30"/> <br/><br/>
    Company Name:<br/> <input type="text" name="companyName" value="<?php echo $_POST['companyname']; ?>" size="30" /> <br/><br/>
    Message:<br/>
    <textarea style="resize: none;" name="message" rows="5" cols="30"><?php echo $_POST['message']; ?></textarea>
    <br/>
    <input type="submit" name="Submit" />
</form>

当我提交页面时,它将运行 check.php 文件并验证所有数据是否正确。如果满足所有条件,它应该返回以下 If/Then 语句。

if (!$errors) {
    $mail_to = 'test@test.com';
    $subject = 'New Mail from Form Submission';
    $message  = 'From: ' . $_POST['name'] . "\n";
    $message .= 'Email: ' . $_POST['email'] . "\n";
    $message .= 'Company Name: ' . $_POST['companyname'] . "\n";
    $message .= "Message:\n" . $_POST['message'] . "\n\n";
    mail($mail_to, $subject, $message);

    echo "Thank you for your email!<br/><br/>";
    $_POST = array(); //Clear form after submit

} else {
    echo '<div style="color: red">' . $errors . '<br/></div>';
}

是否有在“谢谢”或“错误”回声期间添加自动功能,自动将人带回联系表单?

我希望我正确地解释了我想做的事情。如果不是,请告诉我,我会尽量澄清一点。

【问题讨论】:

  • 在表单操作中添加“#anchor-name”可以解决问题……还是我遗漏了什么?

标签: php html forms anchorpoint


【解决方案1】:

向表单添加一个 ID 并将锚点附加到表单操作 URL 上

&lt;form method="post" id="myform" action="&lt;?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?&gt;#myform"&gt;

【讨论】:

  • 您能否将其标记为正确答案,然后请:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-02
  • 2013-09-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-14
  • 2010-09-11
相关资源
最近更新 更多