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

È stato utile?

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.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top