我有一些像这样的验证码 -
if ($('#address').val()) {
if ($('#address').val().length > 60 || $('#address').val().length < 5) {
errorMessage += "Length of Your Address must be between 5 and 60.\n";
valid = false;
} else {
var rege = /^[a-zA-Z]([0-9a-z_\s])+$/i;
if(!rege.test($('#address').val())){
errorMessage += "Please enter Valid Address.\n";
valid = false;
} else {
var address = $('#address').val();
//alert ('My address is : ' + address);
}
}
} else {
errorMessage += "please enter your address\n";
valid = false;
}
我的问题是我如何将此值传递给php。我的价值在这里 - var address = $('#address').val();
我需要在PHP中再次检查此值,并且需要在同一页面上回显该值。
我用它是这样的 -
if( !valid && errorMessage.length > 0){
alert(errorMessage);
} else {
$.ajax({
type: "POST", // HTTP method POST or GET
url: "demo2.php", //Where to make Ajax calls
data: {
myname: name,
myaddress: address,
myemail: email
}
});
}
demo2.php页面与我的表单相同。
在我的页面上方,我尝试打印$ _POST数组,但没有显示。
echo '<pre>', print_r( $_POST).'</pre>';
希望有人能帮助我。 谢谢。
答案 0 :(得分:0)
首先检查demo2.php是否设置了POST
if( isset($_POST['myaddress']) ) {
// your echo statement here
}
然后你只需要在jquery处理响应中添加一些代码。
if( !valid && errorMessage.length > 0){
alert(errorMessage);
} else {
$.ajax({
type: "POST", // HTTP method POST or GET
url: "demo2.php", //Where to make Ajax calls
data: {
myname: name,
myaddress: address,
myemail: email
}
}).done(function(response) {
$('#address-display-div').html(response);
});
}
将#address-display-div
替换为您要显示地址的选择器。
答案 1 :(得分:0)
请求页面:
var request =$.ajax({
type: "POST",
url: "demo2.php",
data: {myname: name,myaddress: address,myemail: email}
dataType: "json",
success: function (a) {
alert(a[0]);
}
});
request.fail(function(jqXHR, textStatus){alert('Ajax Error: '+ textStatus);});
在你的php文件中:
<?php
if(isset($_POST['myname']) && isset($_POST['myaddress']) && isset($_POST['myemail'])){
[do your stuff]
echo json_encode(array(0=>'<pre>'.print_r( $_POST,true).'</pre>'));
}
else
echo json_encode(array(0=>'Missed Variable'));
exit();
?>
否则你还可以发布你的php页面吗?