Jquery 创建会话,然后在ajax表单提交上销毁
我有一个网站上的表单(建立在wordpress上),我正在工作。以下是我试图实现的目标的逐步说明 参观者:Jquery 创建会话,然后在ajax表单提交上销毁,jquery,forms,session,Jquery,Forms,Session,我有一个网站上的表单(建立在wordpress上),我正在工作。以下是我试图实现的目标的逐步说明 参观者: 点击提交按钮 成功提交后,他被重定向到另一页 点击后退按钮(出于任何愚蠢的原因) 他会看到“文档过期”页面(在Firefox中,其他浏览器可能会有所不同) 为此,我尝试使用我不太了解的会话。我已将会话_start()在页眉前的页面顶部,问题就出现了。无论我把session_destroy()放在哪里我无法获得所需的结果。如果我需要分配变量,我会怎么做。请帮忙。下面是我使用的代码片段 HTM
会话_start()代码>在页眉前的页面顶部,问题就出现了。无论我把session_destroy()放在哪里代码>我无法获得所需的结果。如果我需要分配变量,我会怎么做。请帮忙。下面是我使用的代码片段
HTML-这一个有点疯狂,因为它不使用
标记,并提供在div中生成的内容
<div id="content-div">
//some php generated contents
</div>
<input type="submit" value="SUBMIT CONTENT" id="short_button" onClick="handleFormSubmit()">
//一些php生成的内容
AJAX-用于提交和重定向
<script language="javascript" type="text/javascript">
function handleFormSubmit(){
var button = document.getElementById('short_button');
button.style.display = 'none';
}
</script>
<script type="text/javascript">
jQuery(document).ready(function($) {
$('#short_button').click(function(){
$.ajax({
type: 'POST',
url: 'http://awesomeness.com/pathto/processForm.php',
data:{'message':$('#content-div').html(),'client': $('#some-field').val() },
success:function(data) {
window.location = "http://awesomeness.com/thanks/";
}
});
});
});
</script>
函数handleFormSubmit(){
var button=document.getElementById('short_button');
button.style.display='none';
}
jQuery(文档).ready(函数($){
$(“#短按钮”)。单击(函数(){
$.ajax({
键入:“POST”,
网址:'http://awesomeness.com/pathto/processForm.php',
数据:{'message':$('content div').html(),'client':$('seme field').val(),
成功:功能(数据){
window.location=”http://awesomeness.com/thanks/";
}
});
});
});
PROCESSFORM.PHP
$to = "emailto@awesomepeople.com";
$subject = "NEW ARTICLE";
$message .= $_POST['message'];
$client = $_POST ['client'];
$headers = "From: awesomesite <someone@website.com>" . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
mail($to, $subject, $message, $headers);
$to=”emailto@awesomepeople.com";
$subject=“新文章”;
$message.=$_POST['message'];
$client=$_POST['client'];
$headers=“From:awesomesite”。“\r\n”;
$headers.=“MIME版本:1.0\r\n”;
$headers.=“内容类型:text/html;字符集=ISO-8859-1\r\n”;
邮件($to、$subject、$message、$headers);
底线:我应该把会话放在哪里编码>编码以获得所需结果,如步骤4所示。换句话说,表单提交后如何销毁会话。如果我需要使用会话变量,比如$\u session=['input']
,那么在这种情况下我应该如何使用它。非常感谢。我不是php专家。。。但是难道你不需要自己生成“Document Expired”消息吗?在另一个完全基于php的表单中,我在提交后点击后退按钮,就会在firefox上收到“Document Expired”,它会重置表单。我想每个浏览器都会有不同的消息。我明白了。我认为你的治疗与此无关。另一个正常工作的表单是否没有使用window.location重定向?如果您希望实际加载不同的页面,为什么不简单地以传统的非AJAX方式发布表单?按“上一步”按钮返回到原始页面对您不起作用,就浏览器而言,保存表单的页面实际上没有表单帖子,因为帖子是异步处理的。我已将问题按正确的顺序排列,并使其非常明确,希望它现在有意义。请再看一看。