Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Convertire caratteri speciali

    ciao a tutti.

    non riesco a convertire i caratteri speciali di un messaggio, ma non capisco dove sia il problema.
    Ecco il codice:
    Codice PHP:
    function rimuoviAccenti($string){
      
    $chars = array("è""à""ù""ì""ò""é""À""Ù""Ì""Ò");
      
    $convert = array("e'""a'""u'""i'""o'""e'""A'""U'""I'""O'");
      
    $return str_replace($chars$convert$string);
      return 
    $return;
    }

    function 
    clean($stringa){
      return 
    addslashes(htmlspecialchars(rimuoviAccenti($stringa)));
    }

    $messaggio=stripcslashes(nl2br(clean($_POST['Message']));
    echo 
    $messaggio
    dove $_POST['Message'] = " à è é ì ò ù \' " ' ";

    Qualcuno sa spiegarmi perché?? Grazie!!
    Non esiste un vero genio senza una piccola dose di follia.

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    a me questo "funziona":

    Codice PHP:
    $msg ' à è é ì ò ù ';

    function 
    rimuoviAccenti($string){ 
      
    $chars = array("è""à""ù""ì""ò""é""À""Ù""Ì""Ò"); 
      
    $convert = array("e'""a'""u'""i'""o'""e'""A'""U'""I'""O'"); 
      
    $return str_replace($chars$convert$string); 
      return 
    $return


    function 
    clean($stringa){ 
      return 
    addslashes(htmlspecialchars(rimuoviAccenti($stringa))); 


    $messaggio=stripcslashes(nl2br(clean($msg)));
    echo 
    $messaggio

  3. #3
    Ma che gli fai a quei poveri caratteri

  4. #4
    è praticamente la parte iniziale di un invio ella mail...
    Purtroppo i caratteri speciali (su libero) non vengono letti correttamente e il risultato è una mail piena di valori / caratteri (non so bene come definirli) strani che riporto qui sotto:

    à è é ì ò ù

    ma che caspio sono???
    Non esiste un vero genio senza una piccola dose di follia.

  5. #5
    http://kunststube.net/encoding/

    Ricordo che per regolamento e' vietato promuovere i propri messaggi con richiami tipo "E' URGENTE", quindo suggerisco di cambiare la firma.

  6. #6
    pardon cambio immadiatamente la firma!!
    Non esiste un vero genio senza una piccola dose di follia.

  7. #7
    Per l'invio della mail non scrivo la solita funzione mail($to, $subject, $mex, $header) perchè libero le vede come spam e le "elimina" prima ancora che arrivino all'utente, ma mi "appoggio" a PHPMailer, dove tutti i parametri sono già correttamente impostati.
    Non esiste un vero genio senza una piccola dose di follia.

  8. #8
    ATTENZIONE! RISOLTO TUTTO!!
    La variabile del charset su PHPMailer ( public $CharSet ) settata con ' iso-8859-1 ' invece di essere inizializzata con ' utf-8 '...
    Chido scusa a tutti per la mia stupidità... Ero convinto che fosse già inizializzata a utf-8... Dovevo controllare prima... Scusate!!

    Grazie a chi mi ha aiutato!!

    Buon lavoro a tutti!!
    Non esiste un vero genio senza una piccola dose di follia.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.