Page 1 of 1
Απορια με php-mysql Προβλημα εμφανισης ελληνικών χαρακτήρων
Posted: Tue Aug 24, 2010 7:27 pm
by kostas885
Καλησπέρα σε όλους!! Αφου έχω περασει κάποιο κείμενο στη βάση μου και θέλω να το εξάγω στην ιστοσελίδα , μου το απεικονίζει με ερωτιματικά. Στο phpmyadmin μου το εμγανιζει κανονικά. Δουλεύω με dreamweaver και xampp. Την βαση την εχω δημιουργησει με utf8_general_ci collation και επίσης οι πινακες χρησιμοποιουν το ιδιο.Στο php αρχειο εχω συμπαριλάβει το παρακάτω : <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Δωστε μου μια λύση.
Ευχαριστώ πολύ!!!
Re: Απορια με php-mysql Προβλημα εμφανισης ελληνικών χαρακτήρων
Posted: Tue Aug 24, 2010 8:06 pm
by Serendipity
μηπως στη βάση πρέπει να το περάσεις με greek_general_ci??
Re: Απορια με php-mysql Προβλημα εμφανισης ελληνικών χαρακτήρων
Posted: Tue Aug 24, 2010 10:36 pm
by Ισοβίτης
...και λογικά θα είναι ΟΚ.
Re: Απορια με php-mysql Προβλημα εμφανισης ελληνικών χαρακτήρων
Posted: Sun Aug 29, 2010 1:34 am
by Michelle
Αν δεν πιάσει αυτό που πρότεινε ο Ισοβίτης, δοκίμασε να στείλεις το Content-Type header μέσω PHP:
Code: Select all
header('Content-type: text/html; charset=utf-8');
(προσοχή: Όπως και οποιοδήποτε άλλο header, πρέπει να σταλεί πριν σταλεί οποιοδήποτε output)
Τα headers που στέλνει ο server έχουν μεγαλύτερη προτεραιότητα από το meta της HTML. Οπότε αν ο server σου στέλνει ας πούμε ISO-8859-7, επικρατεί αυτό, ο,τι meta και να βάλεις.
Αν δεν πιάσει τίποτα απ'όσα σου προτείναμε, δημοσίευσε και ένα δείγμα από τα "κινέζικα" να δούμε και περί τίνος πρόκειται, "κινέζικα" από "κινέζικα" έχουν διαφορά.

Ή --ακόμα καλύτερα-- δώσε κάποιο link.
Re: Απορια με php-mysql Προβλημα εμφανισης ελληνικών χαρακτήρων
Posted: Sun Aug 29, 2010 11:57 am
by kostas885
Λοιπον παιδια καταρχίν πρέπει να σας ευχαριστίσω ολους για τη βοήθεια σας!!! Το πρόβλημα λύθηκε... 2 γραμμες κώδικα ήταν αρκετές.
"SET NAMES 'utf8'"
"SET CHARACTER_SET 'utf8'"
βεβαίως η βάση ειχε collation utf8_general_ci το ίδιο και όλοι οι πίνακες.
Re: Απορια με php-mysql Προβλημα εμφανισης ελληνικών χαρακτήρων
Posted: Sun Aug 29, 2010 4:04 pm
by Zifnab
Εδώ είναι τα βασικά βήματα μαζεμένα - γιατί η απάντηση σε παλιότερη ερώτηση ήταν κάπως καταχωνιασμένη.
Zifnab wrote:1)πρέπει να δεις το character set της βάσης σου και των πινάκων της (προτείνω utf8 με collation utf8-general-ci)
2) το connection με τη βάση να γίνεται σε unicode
Code: Select all
μετά το mysql_connect:
mysql_query('set character set UTF8');
mysql_query("SET NAMES 'utf8'");
3)τα queries αν τα τρέχεις με κονσόλα να σιγουρευτείς ότι όντως υποστηρίζει ελληνικά unicode (πχ το putty ναι μεν ρυθμισμένο σε unicode τα πέρναγε ως iso-8859-7 (greek)- οπότε για να τα περάσω το έκανα μέσω phpmyadmin αφού δεν υπήρχε άλλη λύση). Επίσης το αρχείο .sql να είναι κωδικοποιημένο σε UTF-8.
4)Να έχεις κωδικοποιημένα τα php/html σε UTF-8 χωρίς BOM
5)Αν τα ανέβαζες σε ftp server (όπως της σχολής) να είχες σιγουρέψει ότι τα ανεβάζει σαν unicode ή binary και όχι σαν ascii.
6)τέλος για τον browser να έχεις το σωστό encoding στα headers της html/php. Προσοχή στις κενές γραμμές και τα BOM