Προς το περιεχόμενο

Προβλημα με ελληνικο encoding σε mysql


eftihios1986

Προτεινόμενες αναρτήσεις

Δημοσ.

Κανω μια εφαρμογη με jsp και mysql.

 

Το προβλημα μου ειναι οτι κανω καποιες εγραφες στην βαση σε ελληνικα και αυτες αποθηκευονται κινεζικα. Οταν κανω εγραφη απευθειας στην mysql γινεται κανονικα.

 

Η κωδικοποιηση που χρησιμοποιω σε ολες τα σημεια ειναι utf-8 και collation utf8_general_ci. Δοκιμασα και με utf8_unicode_ci.

 

Εχω κανει πολλες δοκιμες αλλα δεν μπορω να βρω πραγματικα τι φταιει...

 

Μηπως εχει κανεις καμια ιδεα ?

Δημοσ.

Η συνδεση γινεται ως εξης:

 

>Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://" + host + database + arguments, username, password);
conn.setAutoCommit(false);

 

και για arguments βαζω:

 

>String arguments = "?useUnicode=yes&characterEncoding=utf-8";

Δημοσ.

Χωρίς να ξέρω από java και jsp, θα σου έλεγα να δεις επίσης αν τα αρχεία κώδικα που χειρίζονται τα δεδομένα είναι και αυτά αποθηκευμένα σε utf-8.

Δημοσ.

Θα πρέπει και η φόρμα (κάποιο .jsp αρχείο; ) να είναι αποθηκευμένη σε utf8. Θα σου πρότεινα να κάνεις save το αρχείο με utf8. Εγώ γράφω asp.net με Visual Studio. By default το VS σώζει τα αρχεία σε utf8. Παρόλα αυτά, συμβαίνει να αποθηκεύεται με άλλο encoding το αρχείο. Εκεί χρησιμοποιώ την επιλογή "Save with encoding". Φαντάζομαι πως το IDE σου θα έχει μία αντίστοιχη επιλογή.

 

Επίσης πρέπει να υπάρχει και το σχετικό meta tag στο <head> της φόρμας.

 

><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Δημοσ.

Φανταζομαι οτι και το Dreamweaver θα εχει αναλογη επιλογη "save with encoding". Νομιζω οτι αυτο ειναι απο τα λιγα πραγματα που δεν εχω δοκιμασει. Πιστευεις θα πρεπει να αλλαξω ολα τα αρχεια η μονο το αρχειο που κανω την συνδεση στην βαση και την εισαγωγη των δεδομενων ?

 

Στο head το εχω ρυθμισει σε utf8 οποτε δεν ειναι απο εκει το προβλημα.

Δημοσ.

Δοκίμασε στα αρχεία που έχεις θέμα, απλά για να σιγουρευτείς ότι εκεί είναι το πρόβλημα. Αν όντως είναι αυτό, τότε ναι θα πρέπει όλο το project να σωθεί έτσι.

Δημοσ.

Μετα απο πολλες προσπαθειες και δοκιμες, στην βαση και τον connector, απλα αλλαξα την φορμα, στη οποια ειχα το προβλημα, απο get που ηταν σε post.

 

Λιγο περιεργο αλλα με αυτον τον τροπο μου δουλεψε τελικα.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...