Visualizzazione dei risultati da 1 a 10 su 14

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    193
    così si può riassumere in questo modo.
    1)Crea i dati nel database impostando UTF-8.
    2)Nella connessione al database assicurati che è in UTF-8 come nella guida di Alhazred (per motivi legacy, con PDO non funziona poiché eseguono una versione senza patch, non mi dilungo oltre) quindi usa mysqli dopo aver impostato la connessione usa anche SET NAMES (occorre verificare altri dettagli prendi esempio dal codice WordPress dal github online).
    3)PHP_INI_USER Entry can be set in user scripts (like with ini_set()) or in the Windows registry. Since PHP 5.3, entry can be set in .user.ini
    PHP_INI_PERDIR Entry can be set in php.ini, .htaccess, httpd.conf or .user.ini (since PHP 5.3)
    PHP_INI_SYSTEM Entry can be set in php.ini or httpd.conf
    PHP_INI_ALL Entry can be set anywhere
    Ti interessa la direttiva default-charset 'UTF-8' e altre direttive che lavorano con esse come ad esempio output_handler o zlib.output_handler e anche il vecchio comportamento di https://www.php.net/manual/en/mbstring.overload.php
    4)se possibile utilizza editore nella lista php https://www.php.net/manual/en/tutorial.firstpage.php
    5)Per la creazione o aggiornamento di pagine/file utilizza UTF-8 senza boom
    6)Assicurati che comunque il file con codice php sia chiuso ?> (motivo compatibilità codice legacy e in alcune circostanze).
    7)Assicurati che il browser non invi una codifica diversa, l'utente può sempre decidere se il browser deve usare una codifica arbitraria (in realtà solo per browser vecchi che permettevano tale impostazione).
    8)Alcune funzioni php lavorano con i dati, anche htmlspecialchars o htmlentities usa il terzo parametro $enconding esplicitamente per essere compatibile per qualsiasi versione di php però i caratteri ammessi variano da versione a versione php della propria tabella.
    Piccolo esempio.
    Codice PHP:
    if(ini_get('output_buffering')) {
    //php si prende del tempo e prima invierà gli headers e dopo mostra output
    echo 'Hello Words';
    }
    header('Content-Type: text/html; charset=utf-8'); // poiché è  attivo il buffer dovrebbe sovrascrivere il Content-Type
    //altrimenti usa TRUE implicito per il secondo parametro

    ?> 
    Ultima modifica di darbula; 16-03-2021 a 16:42

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2020
    Messaggi
    7
    Quote Originariamente inviata da darbula Visualizza il messaggio
    così si può riassumere in questo modo.
    ...]
    Grazie molte della risposta, davvero ricca e articolata.
    Qualcosa la capisco ed era già impostata così, altre cose me le devo andare a studiare perchè non le conosco.

    Nel frattempo mi è capitata una cosa ancora più strana e inspegabile:
    i dati che provengono dall'import del DB locale non visualizza correttamente le accentate,

    Invece se inserisco direttamente da remoto tramite la pagina php, non direttamente da MySql, allora le accentate sono valorizzate correttamente.

    http://www.bbcentroantico.com/phs/de...nte.php?id=194

    Invece le query sul MySqlAdmin di Aruba danno risultato opposto,
    questa è la query sulla riga che ho inserito manualmente da PHP, che viene visualizzata correttamente

    + Opzioni
    id ragione_sociale sede_legale_indirizzo sede_legale_citta sede_legale_provincia sede_legale_cap rappr_legale telefono cellulare telefono_altro fax p_iva codice_fiscale sito_internet email pec titolare data_nascita_titolare codice_univoco txt_note chk_invio_alert
    Modifica Copia Elimina 194 à èìòù à èìòù città : à èìòù à èìò

    Invece i dati importati dal DB locale hanno un comportamente al rovescio: sono visualizzati correttamente nella query ma poi in PHP non mi visualizza nulla, se rimuovo la funzione htmlspecialchars visualizza accenti strani. Mah?
    Questa è la query sulla riga importata:
    id ragione_sociale sede_legale_indirizzo sede_legale_citta sede_legale_provincia sede_legale_cap rappr_legale telefono cellulare telefono_altro fax p_iva codice_fiscale sito_internet email pec titolare data_nascita_titolare codice_univoco txt_note chk_invio_alert
    Modifica Copia Elimina 194 DA Localé:àèìòùteò DA Localé:àèìòùteò DA Localé:àèìòùteò DA Local
    Ultima modifica di eiasu; 16-03-2021 a 20:21

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