I am sending an ajax request to a php file as shown here:
function checkDB(code, userid)
{
$.ajax({
type: "POST",
url: "<?php bloginfo('template_url'); ?>/profile/check_code.php",
data: 'code='+code+'userid='+userid,
datatype: "html",
success: function(result){
if(result == 0)
{
$('#success').html( code + ' has been redeemed!');
// alert('success');//testing purposes
}
else if(result == 2)
{
$('#err').html( code + ' already exists and has already been redeemed....');
//alert('fail');//testing purposes
}else if(result == 1){
$('#err').html( code + ' redeem code doesnt exist');
}
alert(result);
}
})
}
This is sent calling the function on submit, like so:
<form method="post" class="sc_ajaxxx" id="sc_add_voucherx" name="sc_ajax"
onsubmit="checkDB(document.sc_ajax.sc_voucher_code.value, <?php echo $user_id ?>); return false;">
</form>
The problem is that the user id php variable is not getting sent to the check_code.php page by ajax. or at least I cant seem to echo the id back to the page.
Is this the correct way of passing multiple values to a server-side page? Without the userid passing over, it works fine just passing over the code.
Thanks guys :)
usually sending your data like this helps:
the most important thing to not forget is to verify if the name of the variables you are sending are the same in the server side
Try this code... it is working for me ...
you can try this :
instead of
Here is how
POST
data should be formatted:In your case (note the
&
as a separator):But jQuery does that for you if you specify your data as an object:
The answer from Linus Gustav Larsson Thiel refers, I used the following &.ajax() that triggers when a button is clicked and it works great. I could pass day, month and year parameters.