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

PHP / MySQL και special characters προβλημα


sandbird

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

Δημοσ.

Έχω σπάσει το κεφάλι μου και λύση δεν μπορώ να βρω.

 

Έχω μια βάση δεδομένων που γράφω Σουηδικά επάνω της.

Όταν κάνω save μια φόρμα με ένα input text πχ την λέξη Tjänster, πάνω στην βάση γράφεται σαν Tj& # 228;nster. (βάζω κενά γιατί δεν το πιανει το φορουμ)

 

Όταν πάω να την ψάξω όμως από μια φόρμα στέλνει στην βάση

 

>select * from pages where( title LIKE '%Tjänster%' or block1 LIKE '%Tjänster%')

 

με αποτέλεσμα να μου φαίρνει 0 αποτελέσματα....

 

Πώς μπορώ να μετρατρέψω το Tjänster σε Tj& # 228;nster για να το κάνει match ?

 

Το collation μου είναι ut8_general_ci και η βάση utf8 :(

 

Please λίγο βοήθεια

Δημοσ.

Πράγματι είναι θέμα αυτό...

 

Μία λύση είναι να δημιουργήσεις ένα .php αρχείο στο οποίο θα περιέχεις τα special characters της γλώσσας και το πως το σώζει στην βάση. Και έτσι όταν θα πας να ψάξεις μία λέξη θα κάνεις την αντικατάσταση.

Δημοσ.

omg.. εγώ νόμιζα οτι υπαρχει καποια php λύση όπως καμιά εντολη σαν την htmlentities η την htmlspecialchars.... με γονάτισες :(

 

Δεν μπορώ να γράφω στη βάση κατευθείαν την λέξη χωρίς να την κάνει έτσι convert ? Τα ελληνικά πως τα κρατάει...τα σουηδικά γιατί τα αλλάζει ?

 

Πρέπει να παραδλωσω σήμερα το search, και έχω τρελαθεί.

Δημοσ.

Φίλε μου δεν ξέρω γιατί ποτέ δεν μου έτυχε κάτι αντίστοιχο...

 

Σίγουρα υπάρχει και καλύτερη λύση...αλλά δεν είναι και τόσο τραγικό !!

 

Η δουλειά είναι να φτιάξεις αυτό το αρχείο (αν και υπάρχουν έτοιμα) και για να κάνεις το convert χρειάζεσαι μία απλή function

Δημοσ.

Επειδή η βάση είναι φρέσκια δεν με πειράζει να την ξανακάνω από την αρχή, αν δηλαδή θα μπορέσω να γράψω κανονικά την λέξη πάνω στη βάση χωρίς να την κάνει acsii μόνη της. Δοκιμάζω τώρα με latin1_swedish collation μπας και πιάσει αλλά δεν χαμπαριάζει...grrrr

thanks πάντως.

Επισκέπτης
Δημοσ.

τι encoding χρησιμοποιείς στην σελίδα σου;

Δημοσ.

Τελικά το έφτιαξα αλλάζοντας το encoding της σελίδας που είναι η φόρμα σε UTF-8, ώστε να σώζεται σαν Tjänster πάνω στη βάση και όχι με html entity.

 

Ευχαριστώ όλους :)

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

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

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