koslibpro Δημοσ. 23 Ιουλίου 2012 Δημοσ. 23 Ιουλίου 2012 Καλησπερα και παλι, που λετε εχω εναν κωδικα σε php που τρεχει ,κανει καποιες συγκρισεις και εμφανιζει τα αποτελεσματα στον χρηστη. το τμημα που χρησιμοποιειται για αυτο ειναι το > $result = mysql_query("SELECT * FROM table WHERE sunthikes"); while($row = mysql_fetch_array($result)) { echo $row['val1'] . " in " . $row['val2']; echo "<br />"; } τα val1 και val2περιεχουν πολλες φορες και ελληνικους χαρακτηρες. υπαρχουν φορες που εμφανιζει αποτελεσματα σε στυλ > ?????????????? in ?????????????? ?????????????? in ?????????????? ?????????????? in ?????????????? εχει κανεις ιδεα τι συμβαινει εδω? ευχαριστω εκ των προτερων!
isay Δημοσ. 24 Ιουλίου 2012 Δημοσ. 24 Ιουλίου 2012 Προφανώς έλυσες το edited πρόβλημα. Γενικά πριν χρησιμοποιήσεις την while να φροντίζεις να επιβεβαιώνεις οτι εχεις αποτελέσματα απο το query ( π.χ. $num_rows = mysql_num_rows($result); ) και με ενα if να τρέχεις το while εφόσον $num_rows > 0 Για το πρόβλημα που αναφέρεις τώρα. Είναι θέμα κωδικοποίησης (βάσης, πίνακα αλλά και σελίδων). Δοκίμασε σε όλα να κάνεις κωδικοποιήση utf-8
koslibpro Δημοσ. 24 Ιουλίου 2012 Μέλος Δημοσ. 24 Ιουλίου 2012 Προφανώς έλυσες το edited πρόβλημα. Γενικά πριν χρησιμοποιήσεις την while να φροντίζεις να επιβεβαιώνεις οτι εχεις αποτελέσματα απο το query ( π.χ. $num_rows = mysql_num_rows($result); ) και με ενα if να τρέχεις το while εφόσον $num_rows > 0 Για το πρόβλημα που αναφέρεις τώρα. Είναι θέμα κωδικοποίησης (βάσης, πίνακα αλλά και σελίδων). Δοκίμασε σε όλα να κάνεις κωδικοποιήση utf-8 Οντως το ελυσα το edited προβλημα ηταν τελικα πολυ πιο απλο αποσο σκεφτηκα αρχικα πως ηταν..ειχα κανει ενα συντακτικο λαθος..χρησιμο ομως ειναι και αυτο που μου ειπες για την εκτελεση του κωδικα αν nom_rows > 0,που θα το χρησιμοποιησω τωρα ουτως ή αλλως.. οσον αφορα το τωρινο προβλημα,ολες οι βασεις και οι σελιδες ειναι σε UTF-8,γι'αυτο απορησα με αυτο που προκυπτει,με τα ????...
macabre_sunsets Δημοσ. 24 Ιουλίου 2012 Δημοσ. 24 Ιουλίου 2012 Εφόσον η while θα εκτελεστεί μόνο και εάν υπάρχουν δεδομένα, δεν είναι λίγο ανούσιος ο έλεγχος "$num_rows > 0" πριν την while;
merianos Δημοσ. 25 Ιουλίου 2012 Δημοσ. 25 Ιουλίου 2012 Μετά το $con = mysql_connect(...); βάλε την παρακάτω συνάρτηση mysql_set_charset('utf8', $con); Θα πρέπει να βεβαιωθείς όμως πως και η βάση σου αποθηκεύει τα δεδομένα σου σε utf8 αλλά και η σελίδα σου έχει utf-8 κωδικοποίηση.
Gchatzop Δημοσ. 26 Ιουλίου 2012 Δημοσ. 26 Ιουλίου 2012 Αλλαξε το collation του πίνακα se utf8_general_ci και της βάσης utf8_general_ci. Επίσης δεν κάθισα ποτέ να το ψάξω αλλά προβλήματα μου έβγαζε πάντα MyISAM και από τότε που το γύρισα σε InnoDB όλα καλά, όλα ανθηρά.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα