输出表单提交成功到页面,而不是重定向
Output form submit success into page instead of redirect
我正在使用WordPress侧边栏小部件来捕获我的时事通讯的电子邮件。该插件已写入重定向到提交后的"成功页面",这不是很好,因为我宁愿它只是输出一个成功的消息在提交后的表单下的div,让访问者留在页面上。我该怎么做呢?我想在成功页面上进行元刷新,回到访问者所在的页面,但是当我很确定我看到过页面上的电子邮件捕获表单时,成功消息只是输出到页面的某个地方,没有重定向,这是相当笨拙的。
如果你不介意,我要复制相当多的插件的代码在这里,因为我不确定需要调整这里得到的onsubmit我正在寻找的那种。或者如果你有其他方法可以让我做这件事,我将非常感谢你的帮助。非常感谢。
<?php
function wp_email_capture_form($error = 0) {
$url = get_option('home');
$url = addLastCharacter($url);
?>
<div id="wp_email_capture"><form name="wp_email_capture" method="post" action="<?php echo $url; ?>">
<?php
if (isset($_GET["wp_email_capture_error"])) {
$error = sanitize($_GET["wp_email_capture_error"]);
echo "<div style='width:80%;background-color: #FFCCCC; margin: 5px;font-weight'>Error: ". $error ."</div>";
}
?>
<label class="wp-email-capture-name">Name:</label> <input name="wp-email-capture-name" type="text" class="wp-email-capture-name"><br/>
<label class="wp-email-capture-email">Email:</label> <input name="wp-email-capture-email" type="text" class="wp-email-capture-email"><br/>
<input type="hidden" name="wp_capture_action" value="1">
<input name="Submit" type="submit" value="Submit" class="wp-email-capture-submit">
</form>
</div>
<?php
if (get_option("wp_email_capture_link") == 1) {
echo "<p style='font-size:10px;'>Powered by <a href='http://www.gospelrhys.co.uk/plugins/wordpress-plugins/wordpress-email-capture-plugin' target='_blank'>WP Email Capture</a></p>'n";
}
}
function wp_email_capture_form_page($error = 0) {
$url = get_option('home');
$url = addLastCharacter($url);
$display .= "<div id='wp_email_capture_2'><form name='wp_email_capture_display' method='post' action='" . $url ."'>'n";
if (isset($_GET["wp_email_capture_error"])) {
$error = sanitize($_GET["wp_email_capture_error"]);
$display .= "<div style='width:80%;background-color: #FFCCCC; margin: 5px;font-weight'>Error: ". $error ."</div>'n";
}
$display .= "<label class='wp-email-capture-name'>Name:</label> <input name='wp-email-capture-name' type='text' class='wp-email-capture-name'><br/>'n";
$display .= "<label class='wp-email-capture-email'>Email:</label> <input name='wp-email-capture-email' type='text' class='wp-email-capture-email'><br/>'n";
$display .= "<input type='hidden' name='wp_capture_action' value='1'>'n";
$display .= "<input name='Submit' type='submit' value='Submit' class='wp-email-capture-submit'></form></div>'n";
if (get_option("wp_email_capture_link") == 1) {
$display .= "<p style='font-size:10px;'>Powered by <a href='http://www.gospelrhys.co.uk/plugins/wordpress-plugins/wordpress-email-capture-plugin' target='_blank'>WP Email Capture</a></p>'n";
}
return $display;
}
function wp_email_capture_display_form_in_post($content) {
$get_form = wp_email_capture_form_page();
$content = str_replace("[wp_email_capture_form]", $get_form, $content);
return $content;
}
?>
这是我第一次尝试堆栈溢出的答案:
您的表单操作当前指向不同的页面,但您需要它引导回到您已经在的页面。您可以使用一个空白的动作属性来实现这一点,如下所示:
<form action="">
这样做之后,您可以在同一页面上使用$_POST
数据。在需要输出的页面div
中,尝试这样做:
if($_POST['wp_capture_action'] == 1)
{
// The form has been submitted, so
// print the success/failure message here
}
else
{
// The form hasn't been submitted, so print
// the form here.
}
我希望这对你有帮助!
相关文章:
- 如何根据所选选项值重定向表单操作
- PHP表单提交和重定向
- 表单提交时重定向页面
- 根据答案重定向表单
- ajax表单提交后从客户端重定向
- 模拟隐藏表单提交&使用JavaScript重定向以实现安全支付
- 高级表单提交-单选、复选框和重定向
- 如何使用单击此处提交重定向表单
- Safari在重定向/表单提交时暂停所有动画
- 防止在没有ajax的情况下提交后重定向表单
- 如何重置表单提交事件的 event.preventDefault()
- 重定向表单失败
- 提交后重定向表单
- 在提交时使用JavaScript重定向表单插件
- JavaScript重定向表单提交
- 我需要提交表单,并在一个花哨的框中重定向表单提交的父页面
- 如何使用jquery提交和重定向表单?
- 使用下拉字段中的值重定向表单提交上的页面
- 重定向表单用户提交时,基于无线电选择仅
- 我试图在表单提交到一个新页面后,根据用户选择的多个选项(Javascript.html)重定向表单