Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,743

    Ancora stranezze con lettere accentate

    Lo so, ci sono mille-mila topics sull'argomento

    ma

    tra poco mi suicido



    non funziona

    1) Salvo gli script con Gedit 2.30.4 su Linux Mint con codifica "Locale attuale (UTF-8)"

    2) il database Mysql è stato creato con codifica UTF8_general_ci, così ogni tabella ed ogni campo di testo

    3) dopo la selezione del database ho messo mysqli_set_charset($connessione_db,"utf8")

    4) nella pagina html c'è meta http-equiv="Content-Type" content="text/html ; charset=UTF-8"


    eppure quando da un input text di un form si inseriscono lettere accentate, queste nel database e nelle pagine html appaiono con le classiche A strane

    Non so più dove sbattere la testa
    Errare humanum est, perseverare ovest

  2. #2
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    Hai fatto quello che dovevi fare. Ora devi cercare il punto nel quale il tuo testo si corrompe. L'invio del testo dalla tua pagina è realmente codificato in utf-8? Controlla che il tuo browser non sia forzato ad usare un'altra codifica. O che quel tag meta compaia nei primi 1024 byte della tua pagina. O.. (ci sono un po' di casi da tenere d'occhio).
    Se il testo inviato dal form è realmente in utf-8, allora magari viene corrotto da alcune manipolazioni e filtraggi a cui viene sottoposto il testo prima di venire salvato nel database. Ricordati che php non supporta nativamente utf-8. Alcune funzioni potrebbero corromperne il contenuto. O forse stai usando una vecchia versione di mysql, dove manca il supporto per unicode. O forse... insomma guarda tu in quale punto del flusso della tua applicazione il testo non è più in utf-8.

  3. #3
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,743
    Molto interessante. Non sapevo che il testo potesse essere corrotto dalle funzioni. Effettivamente prima dell'inserimento nel database ci sono diversi filtraggi.

    Il tutto dovrebbe essere risolto indipendentemente dalla codifica del browser, non posso sapere cosa faranno gli utenti.

    Ora mi metto al lavoro...

    Grazie
    Errare humanum est, perseverare ovest

  4. #4
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,743
    Il punto è che nin locale tutto funziona normalmente, i problemi vengono fuori in hostig




    Locale


    Server del Database

    Server: Localhost via UNIX socket
    Tipo di server: MySQL
    Versione del server: 5.5.41-0ubuntu0.14.04.1 - (Ubuntu)
    Versione protocollo: 10
    Utente: root@localhost
    Codifica caratteri del server: UTF-8 Unicode (utf8)

    Web server

    Apache/2.4.7 (Ubuntu)
    Versione del client del database: libmysql - 5.5.41
    Estensioni PHP: mysqli

    phpMyAdmin

    Informazioni sulla versione: 4.0.10deb1




    Remoto


    MySQL

    Server: Localhost via UNIX socket
    Versione MySQL: 5.5.21
    Versione protocollo: 10
    Utente: kitelifegrado@localhost
    Set di caratteri MySQL: UTF-8 Unicode (utf8)

    Web server

    sw-cp-server/1.0.0
    Versione MySQL client: 4.1.22
    Estensioni PHP: mysql

    phpMyAdmin

    Informazioni sulla versione: 3.3.3

    Info: Le tue librerie di PHP per MySQL versione 4.1.22 sono diverse dalla versione di MySQL server 5.5.21. Potrebbe causare comportamenti imprevedibili.
    Errare humanum est, perseverare ovest

  5. #5
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    Versione MySQL client: 4.1.22
    mysql non supporta unicode solo dalla 5 in poi?
    Ultima modifica di .Kurt; 19-04-2015 a 19:41

  6. #6

  7. #7
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,743
    domani vedo se mi fanno un upgrade di Mysql
    Errare humanum est, perseverare ovest

  8. #8
    Mysql e' a posto, sono le librerie di php che risalgono alla seconda guerra mondiale

  9. #9
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,743
    Ho inviato la richiesta di aggiornamento. Speriamo in bene...
    Errare humanum est, perseverare ovest

  10. #10
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,743
    Mah... hosting che naviga in alto mare, almeno è a basso costo.

    Ho risolto creando le tabelle in remoto.
    Invece che importare sul db in hosting la stringa per la creazione delle tabelle, le ho create di sana pianta, una per una, tramite l'applicazione web.

    Strano ma funziona.
    Errare humanum est, perseverare ovest

Tag per questa discussione

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.