Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]4867[/thread]

umlaute bei zugriff auf access-datenbank



<< >> 7 Einträge, 1 Seite
Gast Gast
 2005-02-28 21:16
#42884 #42884
hallo zusammen,

ich habe folgendes problem: in meiner anwendung (Perl 5.8.6.811 mit entsprechender Tk-Version) habe ich beim zugriff auf eine access-datenbankt (version 2003 als 2000 gespeichert) das problem, dass ich in der benutzerschnittstelle die umlaute eingeben kann, nach dem speichern und wiederanzeigen bekomme ich allerding "lustige zeichen" angezeigt.

kann das daran liegen, dass tk804.xxx (was ja bei den neuen activeperl-versionen gebundelt ist) im unicode zeichensatz (?) arbeitet und access im ansi-zeichensatz?

weiss jemand rat und hilfe.

danke helmut
ptk
 2005-02-28 21:56
#42885 #42885
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Normalerweise kommt Tk804 noch immer mit iso-8859-1-Zeichen klar. Es koennte vielleicht sein, dass die Strings aus Access faelschlicherweise das utf8-Flag gesetzt haben. Mit Dump() aus Devel::Peek kann man naeheres erfahren.
pktm
 2005-03-01 02:51
#42886 #42886
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Öhm, das Problem hatte ich bei einer Paradox-Datenbank.
Angeblich kann man das per ODBC einstellen, dass der passende Zeichensatz übermittelt wird.
Leider hat das bei mir nicht funktioniert, aber ich habe festgestellt, dass die Zeichen auf der Skala um eins nach rechts verschoben wurden.
Wenn du mit den Codierungsversuchen nicht wieterkommen solltest kannst du ja mal ausprobieren, ob die die Umlaute durch Verschiebung erhälst:
my $neuzeichen = chr(ord($zeichen)+$verschiebung);
mfg pktm
http://www.intergastro-service.de (mein erstes CMS :) )
dimpflmoser
 2005-03-01 21:14
#42887 #42887
User since
2004-06-28
46 Artikel
BenutzerIn
[default_avatar]
hallo zusammen,

mit perl/tk 800.xxx hatte ich das problem nicht - ist es möglich auf diese version downzugraden (also ohne große kompilierung)? als zip-file liegt diese version bei activestate leider nicht vor.

danke helmut
ptk
 2005-03-01 21:20
#42888 #42888
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Tk muss kompiliert werden.

Hast du Devel::Peek::Dump() versucht?
dimpflmoser
 2005-03-02 16:26
#42889 #42889
User since
2004-06-28
46 Artikel
BenutzerIn
[default_avatar]
'tschuldige die dumme frage:

wie muss ich das machen ?

danke helmut
ptk
 2005-03-02 16:35
#42890 #42890
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Tk uebersetzen oder Devel::Peek verwenden?

Zum Uebersetzen von Tk braucht man einen C-Compiler, bei Windows normalerweise Microsoft Visual C. Oder man sucht bei alternativen PPM-Repositories, ob es dort noch das aeltere Tk gibt.

Devel::Peek wird einfach so verwendet:
Code: (dl )
1
2
use Devel::Peek;
Devel::Peek::Dump(\$variable_mit_komischen_zeichen);
<< >> 7 Einträge, 1 Seite



View all threads created 2005-02-28 21:16.