当我使用$.post
到php文件时出现了一些奇怪的问题。文件本身没有任何帖子回声'someresult',当我去$ .post后发布数据的html()是空的...帮助输出plz
$('#podborform').submit(function(){
var phone = $('#tour_selection_phone').val();
if(phone != null && phone != '' && phone.length >= 7){
var values = $(this).serialize();
var qwer = String('captcha');
var url = $(this).attr( 'action' );
$.post( url, values,
function( data ) {
var content1 = $( data ).html();
//content = String(content);
//alert(qwer+' - '+content);
if(content1 == qwer){
alert('Вы не правильно ввели код с картинки, попробуйте еще раз!');
}
if(content1 == 'false'){
alert('Извините произошла ошибка!');
}
if(content1 == 'true'){
alert('Ваша заявка успешно отправлена!');
}
}
);
}else{
alert('Вы не ввели все обязательные поля!');
}
return false;
});
它连接到包含此内容的php:
<?php
class mailer{
//var $fields = array();
function __construct(){
if($this->captcha()){
$this->sendmail();
}else{
exit('false');
}
}
function sendmail(){
foreach($_POST as $key=>$post){
$text .= $key.': '.$post.PHP_EOL;
}
if(mail("123@gmail.com", "the subject", $text,
"From: sales@123.ru\r\n"
."Reply-To: {$_POST['email']}\r\n"
."X-Mailer: PHP/" . phpversion())){
exit('true');
}else{
exit('false_mail');
}
}
function captcha(){
require_once('recaptchalib.php');
$privatekey = "123123";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
echo 'captcha'; exit;
} else {
unset($_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
return true;
}
}
}
$mail = new mailer;
?>
答案 0 :(得分:1)
你忘了对象邮件的构造上的():
$mail = new mailer;
应该是
$mail = new mailer();
答案 1 :(得分:1)
.html
获取包含 HTML。
实施例
$('<div><img/></div>').html() // returns '<img/>'
$('test').html() // returns null
您可以直接使用data
。它将响应包含在字符串
if(data == qwer){
}
if(data == 'true'){
}