JQuery $ .Post problema con e -mail
Domanda
Sto cercando di pubblicare i dati in un lightbox tramite jQuery e PHP. Ci sono solo 3 valori di campo che devo passare. Non ricevo errori su invio, ma le e -mail non inviano. Sto notando (tramite Firebug) che gli indirizzi e -mail che vengono inseriti in una casella di testo (che sono gli indirizzi e -mail a cui il modulo inviato) vengono inviati come: '%40' invece di '@'. Qualcuno ha sperimentato questo o sa perché/come risolvere questo problema?
La mia funzione jQuery è la seguente:
$('#notify form').submit(function(){
$.post('path/to/action/to/send/email', { id: $("#id").val(), client_reviews: $("#client_reviewers").val(), client_reviewers_msg: $("#client_reviewers_msg").val() }, function(){
tb_remove();
$('#client_reviewers').val('');
$('#client_reviewers_msg').val('');
});
return false;
});
Grazie in anticipo per qualsiasi aiuto. j
Soluzione
Quello che stai vedendo è Codifica URL.
Fondamentalmente, il @
è un personaggio speciale in un URL. Quindi, quando si invia un campo con un personaggio speciale, deve essere sfuggito. Ciò è molto utile in una richiesta GET in cui i valori del campo finiscono effettivamente nell'URL, ma una richiesta di post segue le stesse regole.
In PHP, puoi usare il Urldecode funzione per decodificare questo.
Altri suggerimenti
%40 è la rappresentazione URL del segno @. Dovrai urldecruire l'e -mail in PHP.