Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: testo in database

  1. #1

    testo in database

    Ciao a tutti,
    mi è capitato che riempiendo un campo varchar di un database le lettere accentate si vedono come un quadratino.
    Il db l'ho riempito caricando un file di testo con i dati da inserire.

    Forse è una domanda stupida la mia,ma a cosa è dovuto?
    E come posso rimediare?
    Grazie a tutti!

  2. #2
    basta che quando inserisci i dati da PHP passi la variavile per la funzione htmlentities... o simili: http://it2.php.net/manual/it/function.htmlentities.php
    Cristiano
    ---
    Originariamente inviato da rebelia : solo un nerd puo' pensare di tacchinare in un forum di informatica

  3. #3
    Ok grazie,però il mio problema è che ho tutto il db su un file di testo,poi con phpMyAdmin faccio importa e carico questo file,è qui che le "è" ,ad esempio,diventano dei quadratini...

  4. #4
    E' un problema di charset

    devi fare in modo che il charset con il quale hai salvato il file sia lo stesso impostato su phpmyadmin.

    Phpmyadmin e' impostato di default su utf-8 (almeno sul mio PC), lo vedi nella schermata di login.

    Invece di solito gli editor avanzati permettono di impostare il charset col quale modifichi e salvi un file.

    Potrebbe essere utile sapere come hai creato il file di partenza che poi importi in mysql. A manina con un editor di testo? Oppure proviene dal dump di un altro database? O un csv creato con un foglio di calcolo?

  5. #5
    Anche per me è impostato su utf-8...
    Poi io copiavo su un nuovo file Blocco note...mi sa che sbaglio qui

  6. #6
    diciamo che blocco note non e' proprio uno strumento professionale...

    sotto Windows mi trovo bene con PSPad (si puo' dire nel forum?) leggero e completo

  7. #7
    So che non è professionale,però non sapevo di questo prob...eheh

    Comunque con che estensione dovrei salvare il file?Grazie!

  8. #8
    Non e' questione di estensione. E' un problema che riguarda tutti i files di testo, al di la del loro utilizzo.

    Immagino che il tuo problema riguardi un file .sql

    un editor di testo avanzato ha la possibilita' di cambiare il charset (ad esempio PSPad ha un menu' 'formattazione'...)

    oltretutto il problema si aggrava se l'applicativo gira su una macchina non windows perche' windows e linux/unix hanno un modo diverso per gestire il ritorno a capo.

    Ad ogni modo se vuoi liberarti del tutto dei problemi e se il testo nel database verra' mostrato in un'applicazione web... beh allora non usare le lettere accentate ma il loro corrispettivo HTML.

  9. #9
    Ok grazie per l'aiuto!

    Ultimo problemino: quando vado a estrarre dal db il testo le lettere accentate le vedo come dei quadratini...come si fa a sistemare?

    Grazie mille!

  10. #10
    la questione e' sempre quella, anche le pagine web hanno un loro charset

    lo si imposta col tag meta.

    per esempio ecco il charset di google, impostato su utf-8

    codice:
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
    Pero' un'altra accortezza e' di usare le apposite funzioni php che trasformano i caratteri strani (accenti e cosi' via) nel relativo codice html

    la funzione e'

    htmlentities()

    prima di passare in output qualsiasi stringa passala prima attraverso quella funzione e ti risolvi un bel po' di problemi

    ciao

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.