io mando una richiesta AJAX in un file php come mostrato di seguito:Invio di parametri multipli di dati con jQuery AJAX
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);
}
})
}
Questo viene inviato chiamando la funzione di invio, in questo modo:
<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>
Il problema è che la variabile php id utente non viene inviata alla pagina check_code.php da ajax. o almeno non riesco a riportare l'ID alla pagina.
È questo il modo corretto di passare più valori su una pagina lato server? Senza il passaggio dell'utente, funziona bene solo passando il codice.
Grazie ragazzi :)
Ok grazie. Come dovrei specificarlo come oggetto? Questo sarebbe un tipo di dati: JSON? – JamesG
No, non è necessario cambiare il tuo 'dataType' - questo è un suggerimento per jQuery come dovrebbe interpretare la tua risposta. I dati che invia sono per impostazione predefinita serializzati come dati post, ad es. 'Codice = 17 & userid = 42'. Hai solo bisogno di cambiare la stringa di dati in ciò che ho scritto sopra e funzionerà. –
Ok questo ha senso ... ma perché vuoi impostare il tuo dataType su JSON? Leggere in JSON in particolare? – JamesG