Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Πληροφορίες σχετικές με την ASP, ASP.NET και με τις εφαρμογές που είναι γραμμένες με αυτήν.

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

Απάντηση
Skywalker
Δημοσιεύσεις: 31
Εγγραφή: 20 Μάιος 2008 17:33

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από Skywalker » 04 Φεβ 2011 14:08

Έχω μια φόρμα html και ποστάρω χωρίς να κάνω refresh τη σελίδα μέσω AJAX και Jquery σε μια σελίδα ASP μερικά δεδομένα τα οποία τα καταχωρώ στη βάση μου. Όταν σε κάποιο πεδίο γράφω ελληνικούς χαρακτήρες τότε πάει και καταχωρείται στη βάση σαν κινέζικα (ακαταλαβίστικα).

Αν βαλω το encoding της σελίδας σε UTF-8 τα δείχνει σωστα όταν κάνω το Select αλλά η σελίδα μου είναι σε WINDOWS-1253 και δε μου τα δείχνει σωστά.

Υπάρχει κάποιο script να μετατρέπει το charset του string σε greek windows (windows-1253) πριν το κάνω insert στη βάση; Ή μήπως υπάρχει κάποιο κόλπο με το AJAX?

Ευχαριστώ.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από dva_dev » 04 Φεβ 2011 16:50

Θα προτείνω αυτό που προτείνεται παντού (και λόγω πλήθους κυρίως στην php). Αλλαξε τη σελίδα σου σε utf8.


Skywalker
Δημοσιεύσεις: 31
Εγγραφή: 20 Μάιος 2008 17:33

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από Skywalker » 08 Φεβ 2011 15:42

dva_dev έγραψε:Θα προτείνω αυτό που προτείνεται παντού (και λόγω πλήθους κυρίως στην php). Αλλαξε τη σελίδα σου σε utf8.
Όλη η μηχανογράφηση της εταιρίας είναι πάνω σ'αυτή τη βάση. Δε γίνεται να κάνω κάτι τέτοιο. Χρησιμοποιήται για το ERP πέραν από το site.

Άβαταρ μέλους
_tasos
Δημοσιεύσεις: 116
Εγγραφή: 03 Μάιος 2007 15:06
Επικοινωνία:

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από _tasos » 09 Φεβ 2011 23:43

Τι database έχεις; Τι collation έχει η ΒΔ σου;

Skywalker
Δημοσιεύσεις: 31
Εγγραφή: 20 Μάιος 2008 17:33

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από Skywalker » 25 Φεβ 2011 11:53

greek windows (windows-1253) είναι το encoding της βάσης και δε γίνεται να αλλάξει.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από dva_dev » 25 Φεβ 2011 19:03

Αν η σελίδα σου είναι σε utf8 ίσως μπορείς να δοκιμάσεις κάτι σαν το παρακάτω:

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

function ConvertEncoding(str)
{
    var oIn;
    oIn = Server.CreateObject("ADODB.Stream");
    oIn.Open();
    oIn.CharSet = 'windows-1253';
    oIn.WriteText(str);
    oIn.Position = 0;
    oIn.CharSet = 'utf-8';
    str = oIn.ReadText();
    oIn.Close();
    oIn = null;
    return str;
}
Συνήθως σε asp χρησιμοποιώ jscript και όχι vbscript. Αν έχεις vbscript θα πρέπει να τροποποιήσεις ανάλογα το συντακτικό πριν το δοκιμάσεις.

papinhio
Δημοσιεύσεις: 2
Εγγραφή: 09 Απρ 2011 20:06

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από papinhio » 09 Απρ 2011 20:11

Τι εννοείς ότι δεν μπορείς να αλλάξεις το encoding της βάσης;
Δεν έχει τέτοια permisions??
Τεσπα, στο ajax κοίτα αν έχεις βάλει την εξής γραμμή

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

https.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
όπου https το object πάνω στο οποίο τρέχεις το request

jigas
Δημοσιεύσεις: 2
Εγγραφή: 07 Ιαν 2004 15:54
Τοποθεσία: Γλυφάδα
Επικοινωνία:

Μετατροπη charset ενός string από UTF-8 σε windows-1253 με τη χρήση ASP

Δημοσίευση από jigas » 08 Φεβ 2013 17:01

dva_dev έγραψε:Αν η σελίδα σου είναι σε utf8 ίσως μπορείς να δοκιμάσεις κάτι σαν το παρ....
Φίλε μου , μου έσωσες τη ζωή.
Thanks

Απάντηση

Επιστροφή στο “ASP, ASP.NET”

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

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