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

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

Δημοσ.

Χαίρετε παίδες έχω ένα πρόβλημα από όταν μετέφερα το site σε νέο σερβερ.

Πήρα ένα backup από το site με Akeeba BackUp. Το μετέφερα στο νέο server και στη βάση τα ελληνικά είναι μια χαρά(όλα τα πεδία είναι ut8_general_ci) αλλά στην Αρχική έχω ερωτηματικά αντι για ελληνικά σε συγκεκριμένα σημεία. Δείτε το Link.png Site:demo Link για να καταλάβετε

 

Όταν έκανα restore από το Akeeba διάλεξα την επιλογή για utf8 που έχει. Προσπάθησα και χωρίς την επιλογή και πάλι το πρόβλημα παρέμεινε στα συγκεκριμένα σημεία.
Είχα πάει στο Akeeba BackUp > Configuration Wizard το πάτησα έκανε τη διαδικασία και ύστερα τα εμφάνιζε σωστά αλλά την άλλη μέρα πάλι τα ίδια.

 

Έχετε καμιά ιδέα?

Δημοσ.

Όχι ακόμα γιατί το subscription είχε αγοραστεί πριν από μένα και στο Akeeba λένε μόνο οι subscribed μπορούν να κάνουν ticket. Περιμένω να μου στείλουν τα credentials.

Δημοσ.

siropo να σε ρωτήσω από περιέργεια. Όταν πέρναγες τα κείμενα στο joomla τα έκανες copy paste από το word ?

Όχι κανονικά τα έγραψα με τον JCE editor. Γιατι?

Δημοσ.

είχα παρατηρήσει παλιά πως όταν έκανα copy απο αρχείο word μου τα έβγαζε στη βάση με ερωτηματικά.



δεν είχα δει το link σου νόμιζα οτι το στο κείμενο είχες θέμα :)  

Δημοσ.

έκανε τη διαδικασία και ύστερα τα εμφάνιζε σωστά αλλά την άλλη μέρα πάλι τα ίδια.

 

 

Εννοείς οτι για λίγο δούλεψε και μετά όχι;

Γιατί μόνο το συγκεκριμένο και όχι όλα τα ελληνικά γράμματα. Τι διαφορετικό έχει αυτο το string(variable /table);

Δημοσ.

Εννοείς οτι για λίγο δούλεψε και μετά όχι;

Γιατί μόνο το συγκεκριμένο και όχι όλα τα ελληνικά γράμματα. Τι διαφορετικό έχει αυτο το string(variable /table);

Ναι, πραγματικά είναι κουφό. Γενικά πολλές φορές δουλεύει κανονικά και άλλες που ανοίγω το site δε δουλεύει.

 

Τα πάνω πάνω ερωτηματικά είναι απλά μιά παράγραφος που είχε προστεθεί manually στο index.php της template σε utf8 encoding.

 

Πολλές φορές μου βγάζει ερωτηματικά και στην product details σελίδα όπου είχα προσθέσει εγώ στο default_showprices.php του virtuemart ένα string που έλεγε Διαθεσιμότητα 5-7 μέρες.

 

Δλδ ερωτηματικά βγαίνουν όπου εγώ είχα γράψει manually κάτι. Όμως πήγα σε όλα τα σημεία και έκανα τα αρχεία utf8 και πάλι τα ίδια. Δοκίμασα και με iso-8859-7 και δουλεύει και μιά όχι.

 

Η βάση δεν έχει πρόβλημα δέχεται κανονικά και εξάγει κανονικά ελληνικά.

Δημοσ.

Καλημέρα.

Μετά την σύνδεση με την βάση γράψε

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");

Αλλα δοκίμασε και αυτό

$_name = 'επικοινωνία';

$_name = utf8_encode($_name);
//OR
$_name = @mb_convert_encoding($_name ,'utf-8','ISO-8859-1');
//OR
$_name = @iconv('ISO8859-1','ascii//TRANSLIT//IGNORE',$_name);
//OR
 $_name  = @iconv('utf-8', 'iso8859-1', $_name ); 
Δημοσ.

Δοκίμασα το πρώτο ζευγάρι και έτρεξε κανονικά, δλδ τα μετέτρεψε σε ελληνικά!

Τα υπόλοιπα με τις utf8 συναρτήσεις κλπ δυστυχώς δεν λειτούργησαν.

 

Αλλά το έβαλα μόνο σε ένα component που μου πέταγε το πρόβλημα δε το δοκίμασα καθολικά.

 

Να σε ρωτήσω το ότι έπιασε δε σημαίνει ότι υπάρχει τελικά πρόβλημα με το encoding της βάσης? Αλλά τα πεδία είναι όλα utf8_general_ci. Γιατί συμβαίνει αυτό?

 

Δλδ όταν γράφω ελληνικά μέσα από πχ ένα custom HTML module δεν έχει πρόβλημα αλλά έχει πρόβλημα όταν τα γράφω harcoded? Πραγματικά δεν καταλαβαίνω.

 

Επίσης στο doc της PHP(Link.png Site: http://php.net/manual/en/function.mysql-set-charset.php">link εδώ ) λέει αυτό:

 


 

Note:

This is the preferred way to change the charset. Using mysql_query() to set it (such as SET NAMES utf8) is not recommended. See the MySQL character set concepts section for more information.

 

 

 

και λέει να χρησιμοποιούμε καλύτερα την bool mysql_set_charset ( mysql $link , string $charset )

 

Αλλά που μπορώ να βρώ το πρώτο όρισμα για joomla? Μήπως είναι λίγο παρακινδυνευμένα πράγματα?

 

Σε ευχαριστώ για το χρόνο σου!

Δημοσ.

Εμένα με προβλημάτισε γιατί ειναι hardcoded ο κώδικας και δε δούλευε. Είναι πολλά τα πράγματα που μπορούν να έχουν παίξει ρόλο.

Μπορεί να είναι ρυθμίσεις μέχρι και του server.

 

Σχετικά με το κομμάτι του κώδικα το $link είναι

$link = mysql_connect('localhost', 'user', 'password');

Οπου βάζεις τα ανάλογα μιας και εσύ τα ξέρεις.

 

Τα string πως είναι αποθηκευμένα στην βάση;

Τα string αυτά είναι στην βάση αποθηκευμένα η μόνο στο αρχείο Php γιατι αν είναι στο αρχείο τότε η βάση δεν έχει σχέση και λογικά παίζει κάτι με την τοπική κωδικοποίηση.

Για να εμφανίζεις το κείμενο πια συνάρτηση χρησιμοποιείς;

Δημοσ.

Όχι το string δεν είναι αποθηκευμένο στη βάση. Φαντάσου ένα <p>ΑΡΩΜΑΤΑ</p> μέσα στο index.php (έξω από <?php ?> closures φυσικά). Δλδ στην ουσία HTML. Απλά πράγματα. Στον προηγούμενο server το έδειχνε κανονικά.

 

Ένα άλλο που δε δείχνει είναι πάλι ένα απλό echo "Διαθεσιμότητα 5-7 μέρες"; στο default_showprices.php ώστε να το δείχνει στην product_details. (ιδιαίτερα αυτό είναι το πιο κουφό τις περισσοτερες φορές το δείχνει κανονικά και άλλες ερωτηματικά). Πολλές φορές παίζει ρόλο και η αλληλουχία των clicks που κάνω. Είναι λες και φορτώνει το κατάλληλο charset αν πατήσω πχ το logo. Κάτι τέτοια κουφά.

 

Όταν λες τοπική κωδικοποίηση λες του server ε? Τι θα μπορούσε να είναι εκεί?

 

Έστειλα στους admin του server και περιμένω και άλλη απάντηση. Μια πρώτη ένδειξη μου έδωσαν Link.png Site: http://docs.joomla.org/How_do_you_deal_with_UTF-8_issues_in_Joomla!_1.0.x_series%3F">αυτό

Δλδ αυτά που μου είπες και εσύ.

Δημοσ.

Δοκιμάζεις να ανεβάσεις ενα αρχείο να δούμε αν θα δείξει τα ελληνικά κανονικά;

Τι εννοείς ακριβώς?

 

Ανέβασα ένα .txt με ελληνικό τίτλο και ελληνικά μέσα στον public_html όπου είναι και το joomla και το δείχνει κανονικά.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...