greek encoding

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
sofrr
Δημοσιεύσεις: 50
Εγγραφή: 20 Δεκ 2005 21:22
Τοποθεσία: Πειραιάς

greek encoding

Δημοσίευση από sofrr » 23 Μάιος 2006 12:48

Για την βάση:

Κώδικας: Επιλογή όλων

ALTER DATABASE `databasename` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Για τον πίνακα:

Κώδικας: Επιλογή όλων

ALTER TABLE `tablename` DEFAULT CHARACTER  SET utf8 COLLATE  utf8_general_cί ;

Για τα πεδία του πίνακα:

Κώδικας: Επιλογή όλων

ALTER TABLE `tablename` CHANGE  `fieldname` `newfieldname` VARCHAR( 15 

) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; 

Άβαταρ μέλους
Anestis85
Δημοσιεύσεις: 1
Εγγραφή: 06 Ιουν 2006 19:05
Τοποθεσία: Νέα Ιωνία, Καλογρέζα

greek encoding

Δημοσίευση από Anestis85 » 06 Ιουν 2006 19:28

Παιδιά γεια σας.
Είμαι καινούργιος στην παρέα σας.
Το forum αυτό το ανακάλυψα τυχαία προχτές ψάχνοντας κάτι πληροφορίες για μια εργασία μου.
Το πρόβλημα είναι το εξής.
Έχω εγκαταστήσει στο pc μου το πρόγραμμα XAMPP 1.5.1 (μεταξύ άλλων περιλαμβάνει php, mysql, apache server,........,).
Έχω δημιουργήσει μία βάση με όλα τα encodings και collation να είναι σε utf-8.
Για την σύνδεση με την βάση χρησιμοποιώ το εξής script

Κώδικας: Επιλογή όλων


<?php  mb_http_output&#40;"utf-8"&#41;; ?>

<?php
function db_connect&#40;&#41;
&#123; 
$result = new mysqli&#40;'localhost','*****', '*****', ';onoma_bashs&#41;; 
    
if &#40;!$result&#41;      
return false;   
return $result;
&#125;
function db_result_to_array&#40;$result&#41;
&#123;  
$res_array = array&#40;&#41;;   
for &#40;$count=0; $row = $result->fetch_assoc&#40;&#41;; $count++&#41;    
 $res_array&#91;$count&#93; = $row;   
return $res_array;
&#125;
?>
Λειτουργεί μία χαρά.


Και το εξής script για να πάρω δεδομένα από τη βάση μου



Κώδικας: Επιλογή όλων

<?php



function get_categories&#40;&#41;
&#123;   
// query database for a list of categories   
$conn = db_connect&#40;&#41;;  
 

$query = 'select cat_id, category from titles'; 


   
$result = @$conn->query&#40;$query&#41;;   
if &#40;!$result&#41;     
return false;   
$num_cats = @$result->num_rows;   
if &#40;$num_cats ==0&#41;      
return false;     
$result = db_result_to_array&#40;$result&#41;;   
return $result; 
&#125;
Το οποίο δυστυχώς δεν μου αναγνωρίζει τους Ελληνικούς χαρακτήρες και βλέπω ???????.

Η κωδικοποίηση της αρχικής σελίδας έχει οριστεί σε utf-8.
Έχω δοκιμάσει όλα αναφέρονται εδώ στη πρώτη σελίδα αλλά δεν είδα αποτέλεσμα.
Πάλι ??????? βλέπω.
Μπορεί κάποιος να με βοηθήσει γιατι πρέπει να παραδώσω σύντομα την εργασία μου.
Ευχαριστώ.
ΕΓΩ+ΕΓΩ=ΕΓΩ

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

greek encoding

Δημοσίευση από cherouvim » 07 Ιουν 2006 07:41


agnostos1
Δημοσιεύσεις: 32
Εγγραφή: 06 Ιούλ 2006 17:40

greek encoding

Δημοσίευση από agnostos1 » 31 Ιούλ 2006 17:18

καλησπέρα παιδιά μια ερωτησούλα, στη σελίδα που έχω φτιάξει έχω βάλει

Κώδικας: Επιλογή όλων

<meta http-equiv=Content-Type content="text/html; charset=iso-8859-7">
<meta http-equiv="Content-Language" content="el">
και στο phpmyadmin έχω δηλώσει τη βάση και τα πεδία της βάσης σε utf8_general_ci, ενώ στο Guestbook μου βλέπω κανονικά στα ελληνικά τις καταχωρήσεις στο phpmyadmin τις βλέπω με ερωτηματικά κλπ.

δοκίμασα στο phpmyadmin να βάλω ελληνικά αλλά χάλαγαν οι καταχωρήσεις της σελίδας μου ( γύρναγαν και αυτές σε ερωτηματικά κλπ)

ευχαριστώ

Άβαταρ μέλους
cordis
Administrator, [F|H]ounder, [C|S]EO
Δημοσιεύσεις: 27617
Εγγραφή: 09 Οκτ 1999 03:00
Τοποθεσία: Greece
Επικοινωνία:

greek encoding

Δημοσίευση από cordis » 01 Αύγ 2006 14:20

από την στιγμή που έχεις στην βάση utf-8 θα πρέπει να στην σελίδα να έχεις utf-8, αλλά για να τα βλέπεις στο Phpmyadmin σωστά θα πρέπει και η κωδικοποίηση της σελίδας του Phpmyadmin να είναι utf-8.
Δεν απαντάω σε προσωπικά μηνύματα με ερωτήσεις που καλύπτονται από τις ενότητες του forum. Για ο,τι άλλο είμαι εδώ για εσάς.
- follow me @twitter

axelan
Δημοσιεύσεις: 13
Εγγραφή: 28 Μάιος 2009 01:31

greek encoding

Δημοσίευση από axelan » 17 Δεκ 2010 17:38

sofrr έγραψε:σε ευχαριστώ πολύ για το scriptaki αλλά την βρήκα την λύση.
Την δημοσιεύω εδώ για να την δουν και οι άλλοι που έχουν το ίδιο πρόβλημα.

Επειδή θα αναφερθώ σε κωδικοποίηση utf8 φαντάζομαι το ίδιο ισχύει και για την περίπτωση greek. Τα βήματα έχουν ως εξής:

α) Γυρνάς την collation της βάσης σου σε utf8_general_ci, όπως και τo collation κάθε πίνακα που περιέχεται στην βάση καθώς και των πεδίων του κάθε πίνακα (εννοείται ότι σε ενδιαφέρουν τα πεδία varchar και text)

β) Υπάρχει η εντολή

Κώδικας: Επιλογή όλων

mysql_query &#40;' set character set utf8 '&#41;;
για την οποία έχει μεγάλη σημασία που ακριβώς θα τοποθετηθεί.

Δύο είναι τα σημεία που τοποθετείται:

1)Ακριβώς μετά την εντολή

Κώδικας: Επιλογή όλων

mysql_select_db&#40;&#41;
και
2) Πριν από καθε άλλη εντολή

Κώδικας: Επιλογή όλων

mysql_query&#40;&#41;
η οποία κάνει retrieve τα data από την βάση.

Από την στιγμή που έκανα αυτές τις αλλαγές δεν παρουσιάστηκε κανένα πρόβλημα. Πάντως το scriptaki σου μου άρεσε, το έκανα copy γιατί ποτέ δεν ξέρεις...
Υπέροχο hint! Thanks a million! Με τις προσθήκες αυτές έχω σωστή απόδοση χαρακτήρων από την φόρμα στην σελίδα php προς την βάση στο myphpadmin, και από εκεί πίσω στο site μου, όταν το πεδίο αφορά VARCHAR. Συνεχίζω να έχω πρόβλημα με τα text πεδία όμως.
Αυτά εμφανίζονται στην myphpadmin ως
%epsilon %alpha
κλπ. χαρακτήρες, και απο εκεί στην σελίδα στο ιντερνετ ως
Το Σ&Icirc;¬ββατο 18 Δεκεμβρ&Icirc;&macr;ου
προσκαλο&Iuml;με
Κάποια βοήθεια για να διορθωθεί και αυτό?

axelan
Δημοσιεύσεις: 13
Εγγραφή: 28 Μάιος 2009 01:31

greek encoding

Δημοσίευση από axelan » 17 Δεκ 2010 19:10

οκ...
got it! μετά από πολύ σβούρισμα από θέμα σε θέμα, το πρόβλημα είναι ο tinymce

boy freestuff rulez!

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες