Visualizzazione dei risultati da 1 a 8 su 8

Discussione: strana codifica ut8

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505

    strana codifica ut8

    salve.

    ho necessità di importare dati da txt su database.
    ho creato un tool apposito che mi legge i dati dal txt, li memorizza in delle variabile, esegue un mysql_real_escape() e applica una codifica utf8.

    il problema è questo :

    se il testo lo prendo da un doc, e poi lo copio dentro a un txt, e faccio l'import, alle volte mi fà delle codifiche strane.

    esempio :

    se creo un file di testo txt (con notepad per esempio), ci scrivo
    "Current 93 – The Great In The Small part I [Durto]" e lo importo, me lo scrive tranquillamente.

    se quel "Current 93 – The Great In The Small part I [Durto]" è in un doc file, lo copio in txt, e poi lo importo, nel database scrive "Current 93 – The Great In The Small part II [Durto]".

    è come se il "trattino" nel .doc lo codifica in maniera diversa.

    e quindi la mia domanda è :
    c'è un modo per resettare delle codifiche precedenti in modo da avere uno standart da dove partire a convertire in utf? (perchè evidentente applica una codifica utf8 a una precedente codifica doc, anche se nel txt lo vedo senza problemi).

    forse è un problema senza risposta, o forse esiste chiedo a voi!

    cordiali saluti

    p.s. altra cosa che mi son sempre chiesto : nel mio database salvo tutto con codifica latin1 e collation latin1_german1_ici.

    se io impostassi tutte le tabelle in utf8 e collation ut8_general_ici, potrei fare a meno di convertire le stringhe prima di inserirle nel database (perchè a quel punto ci penserebbe da solo)? o devo farlo comunque? e che altri vantaggi/svantaggi avrei nel cambiare lo standart nel database?

  2. #2
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    Probabilmente nel tuo word hai l'impostazione che ti cambia automaticamente i doppi apici in virgolette tipografiche, il trattino in n-dash,m-dash, etc.
    Lui te lo importa lo stesso, perche' in latin1 esiste l'n-dash. Ma lo vedi come lo vedi perche' probabilmente guardi il db con phpmyadmin/o altro con la codifica iso-8859-1, dove non esiste n-dash.

    Se la tua applicazione (il tuo sito) servira' i contenuti in iso-8859-1, ti conviene non salvare caratteri fuori da questo charset nel db. O salvarli come entita'.
    Altrimenti passa a utf-8 sia nel db che sul tuo sito.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    ok. ma se imposto utf8 nel database, nel sito (lato server php) applico le funzioni che mi codifichino il tutto in utf8 o si arrangia il db quando gli arrivano i dati?

  4. #4
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    O tieni il sito/db nella stessa codifica, o codifichi gli input/output al volo . Il db da solo non fa nessuna conversione.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    ma allora che senso ha impostare le varie tabelle in vari formati? nel leggerli direttamente dal database forse?

    anche se comunque non "leggo da db", cioè estraggo i dati e li stampo via html

  6. #6
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    Originariamente inviato da markzzz
    ma allora che senso ha impostare le varie tabelle in vari formati?
    Forse dovresti leggerti la documentazione o qualche bella guida sull'unicode

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    ci darò un'occhiata : grazie

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    ho letto le guide a riguardo, ma non ho capito più di quanto conoscessi già.

    è solo un "modo" in cui il database gestisce i dati...
    continuo a non capire le differenze tra i vari formati : se ho latin o utf8 come character sets nel database, essi saranno utilizzati secondo le propie regole. ma e quindi?

    comunque io salvo (quasi) tutto in utf8, dite sia opportuno cambiare il character sets e collation a utf8?

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.