[GDRCD 5.1] Problema lettere accentate in email/messaggio benvenuto
[GDRCD 5.1] Problema lettere accentate in email/messaggio benvenuto postato il 20/03/2015 23:39:28 nel forum programmazione, open source e hosting e modificato da dbgalaxy il 20/03/2015 23:40:09
Ciao a tutti! :)
Ho un problema riguardante l'email che viene inviata al player dopo aver effettuato l'iscrizione alla land e al messaggio di benvenuto automatico che arriva al primo accesso alla land.
Praticamente le lettere accentate vengono tradotte in malo modo oppure vengono visualizzate nella forma dell'entity code (ad es. è -> egrave;).
Ho provato ad utilizzare anche le funzioni già presenti nella patch base (come il bbdecoder), ma ho avuto un risultato peggiore.
Potreste dirmi come risolvere il problema? :)
Vi ringrazio in anticipo per l'aiuto!
Buona serata :)
Pagine → 1
21/03/2015 10:49:09 e modificato da jared990 il 21/03/2015 10:52:31
Si tratta di un problema comune nell'html. Ti consiglio di editare il testo sostituendo lettere accentate e glifi (apostrofi ecc.) Con il codice ascii. Puoi trovarli su questo link (non te li scrivo in quanto l'editor li traduce automaticamente) http://www.caratterispecialihtml.com/
21/03/2015 11:21:24
Ciao e grazie per la risposta! :)
Sì, diciamo che ci avevo pensato ad una cosa del genere come ultima via di salvezza, però prima volevo chiedere nel caso qualcuno avesse trovato una soluzione "alternativa" a questo problema.
Grazie ancora per l'aiuto! :)
21/03/2015 11:53:50
Non credo ci siano ulteriori soluzioni, perché è proprio un problema di lettura del carattere che non viene riconosciuto e processato dal Browser. A volte può succedere anche copiando ed incollando del testo da editor come Word Pad (mi capitò tempo fa su una land mentre editavo l'intera documentazione, saltarono tutti gli apostrofi)
21/03/2015 12:52:41 e modificato da dyrr il 21/03/2015 13:05:35
Per il messaggio di benvenuto mi viene in mente questo:
Riga 404 di /themes/advanced/home/iscrizione.php (o del tema che stai usando al posto di advancced:
gdrcd_query("INSERT INTO messaggi (mittente, destinatario, spedito, testo) VALUES ('".gdrcd_filter('out',$PARAMETERS['info']['webmaster_name'])."', '".gdrcd_filter('get',$_POST['nome'])."', NOW(), '".gdrcd_filter('out',$MESSAGE['register']['welcome']['message'][4])."')");
Cambia il filter da out che ti passa la stringa per htmlentities() a in o get che è anche quella più giusta per le variabili nelle query.
per la mail dopo guardo se trovo il problema.
Per la mail il problema dovrebbe risiedere che negli header della mail viene specificato solo l'indirizzo del webmaster e non la codifica dei caratteri:
mail(gdrcd_filter('get',$_POST['email']), $subject, $text, 'From: '.gdrcd_filter('out',$PARAMETERS['info']['webmaster_email']));
potresti provare con un:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=utf-8\r\n";
$headers .= "From: ".$PARAMETERS['info']['webmaster_email']."\r\n";
$headers .= "Reply-To: ".$PARAMETERS['info']['webmaster_email']."\r\n";
mail(gdrcd_filter('get',$_POST['email']), $subject, $text, $headers);
21/03/2015 13:15:51
Se non ricordo male uno dei problemi ricorrenti delle lettere accentate (di tutto il gdrcd e non solo delle mail) è dato dalla codifica dei file.
Bisogna controllare che tutti i file siano codificati in UTF8 senza BOM e non in ANSI, altrimenti si sballano un sacco di caratteri.
Per farlo basta un editor come Notepad++ e caricare i files con la codifica giusta tramite FTP, per esempio con Filezilla.
21/03/2015 17:37:09
dyrr ha scritto: Per il messaggio di benvenuto mi viene in mente questo:
Riga 404 di /themes/advanced/home/iscrizione.php (o del tema che stai usando al posto di advancced:
gdrcd_query("INSERT INTO messaggi (mittente, destinatario, spedito, testo) VALUES ('".gdrcd_filter('out',$PARAMETERS['info']['webmaster_name'])."', '".gdrcd_filter('get',$_POST['nome'])."', NOW(), '".gdrcd_filter('out',$MESSAGE['register']['welcome']['message'][4])."')");
Cambia il filter da out che ti passa la stringa per htmlentities() a in o get che è anche quella più giusta per le variabili nelle query.
Okay, sistemato! :)
dyrr ha scritto: potresti provare con un:
$headers = "MIME-Version: 1.0
";
$headers .= "Content-type: text/plain; charset=utf-8
";
$headers .= "From: ".$PARAMETERS['info']['webmaster_email']."
";
$headers .= "Reply-To: ".$PARAMETERS['info']['webmaster_email']."
";
mail(gdrcd_filter('get',$_POST['email']), $subject, $text, $headers);
Così funziona! Grazie mille! :D
alb ha scritto: Bisogna controllare che tutti i file siano codificati in UTF8 senza BOM e non in ANSI, altrimenti si sballano un sacco di caratteri.
Per farlo basta un editor come Notepad++ e caricare i files con la codifica giusta tramite FTP, per esempio con Filezilla.
Sìsì, lo sapevo ed è stata la prima cosa che ho controllato (Uso proprio Notepad++ e FileZilla :) )
Vi ringrazio tutti per l'aiuto!!!
11/06/2015 18:29:07
Commento in questo thread perché quello che mi serve è qui, ma non lo trovo. Il testo della mail... dove lo trovo? :O
26/06/2015 21:13:13
Ciao lamartine! :)
Il testo dell'email lo trovi nel vocabolario (vocabulary/IT-it.vocabulary.php). Non troverai il testo per intero, ma sarà suddivisa in più parti.
Devi cercare $MESSAGE['register']['welcome']['message']. :)
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Imperion ↗
Seconda Era ↗
Crossout ↗
World of the Sea Battle ↗
The Coven ↗
AlterEgo ↗
Neverness to Everness ↗
Fallen Gods ↗