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

    Convertire simboli speciali di word

    Buon giorno, ho il problema di dover convertire i simboli speciali di word come accento, virgola, doppio apice,apice singolo al momento dell'insert nel DB, in quanto come si sà generano dei simboli sostitutivi....
    Utilizzo questa funzione(nb: postatami in aiuto qui sul forum):
    Codice PHP:
    function getRewriteString($string) {
        
    $string htmlspecialchars(trim($string));//forse utf8_decode è superfluo,magari "dannoso"
        
    $string preg_replace("/&(.)(uml);/""$1e"$string);
        
    $string preg_replace("/&(.)(acute|cedil|circ|ring|tilde|grave);/""$1"$string);
        
    $string preg_replace("/([^a-zA-Z0-9\.\-]+)/"' 'html_entity_decode($string));
        return 
    $string;
    }

    $txtTesto            $_POST['txtTesto'];

    echo 
    getRewriteString($txtTesto);exit; 
    per togliere i caratteri speciali nei nomi dei file e la vorrei utilizzare con apposita modifica per i testi da caricare...
    Questi testi vengono copiati dal file word e incollati nella textarea per poi essere inseriti nella tabella del db..

    E' possibile se si...come?
    Grazie mille....

  2. #2
    ho trovato questa funzione:
    Codice PHP:
    $str = @mb_convert_encoding($txtTesto'HTML-ENTITIES''UTF-8'); 
    che dovrebbe fare al caso in questione, ma restituisce questo errore:
    Codice PHP:
    Fatal errorCall to undefined function mb_convert_encoding() in..... 
    Ho visto che la funzione è supportata dalla versione come da manuale:
    codice:
    mb_convert_encoding
    (PHP 4 >= 4.0.6, PHP 5)
    ed io ho la PHP Version 5.1.6.
    Sapete dirmi come mai allora non dovrebbe funzionarmi?
    grazie

  3. #3
    fermi tutti questa è una rapina...ho letto su internet che per funzionare bisogna abilitare il server per il multi byte....
    insomma....come posso risolvere?

  4. #4
    ragazzi nessuno può aiutarmi?grazie mille...

  5. #5
    sembra che ho risolto, però seguite questi passi altrimenti divento scemo:

    1) avevo nella index.php dove carico poi tutte le altre pagine questo charset:
    codice:
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    e l'ho uniformato come quello che ho nel DB:
    codice:
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    Il db è strutturato in questo modo:
    codice:
    character_set_system:utf8
    ora, nell'insert e nell'update ho inserito queste funzioni per ottenere quello che volevo:
    Codice PHP:
    $txtTitolo            trim(addslashes($_POST['txtTitolo']));

    //UPDATE 
    $sql =    "UPDATE TBcopy SET"
    ." cTitolo= \"".htmlentities($txtTitolo,ENT_COMPAT,'UTF-8')."\""

    //etc etc...

    //INSERT
    $sqlInTBANNEW =    "INSERT INTO copy ("cTitolo,......
    .
    "\"".htmlentities($txtTitolo,ENT_COMPAT,'UTF-8')."\""
    //etc etc.... 
    Mi dite cortesemente se cosi è corretto?
    Grazie mille...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.