Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Per ODBC von der AS/400 lesen macht Umlaute kaputt

Alles rund um die Systemverwaltung, die Administration und Konfiguration Eures Linuxsystems

Moderator: Moderatoren

Antworten
Host
Newbie
Newbie
Beiträge: 4
Registriert: 4. Jun 2007, 15:56

Per ODBC von der AS/400 lesen macht Umlaute kaputt

Beitrag von Host » 4. Jun 2007, 16:06

Liest jemand erfolgreich Daten von der AS/400?

Bei mir zerlegen sich Strings, die Umlaute enthalten, komplett.
PHP ist dann sogar verwirrt über die Stringlänge...

Ich habe versucht aus den "ODBC language considerations" von IBM schlau zu werden, aber ich konnte nur lesen, was man alles einstellen KANN, nicht aber, was ich einstellen SOLLTE.

Werbung:

Host
Newbie
Newbie
Beiträge: 4
Registriert: 4. Jun 2007, 15:56

Beitrag von Host » 4. Jun 2007, 16:14

whois hat geschrieben:Hi Horst
Host.
Kein R drin.
;-)

Nein, ich durchsuche mal beides.

Danke.

Host
Newbie
Newbie
Beiträge: 4
Registriert: 4. Jun 2007, 15:56

Beitrag von Host » 5. Jun 2007, 09:54

Nein, leider stand in beiden nichts konkretes drin.
Auch wenn die Links sonst sehr interessant waren.

Keiner ausser mir überträgt Daten von der AS/400?

Benutzeravatar
donpedro
Hacker
Hacker
Beiträge: 433
Registriert: 3. Sep 2005, 10:36
Wohnort: Südwestfalen

Beitrag von donpedro » 5. Jun 2007, 11:03

Host hat geschrieben:Keiner ausser mir überträgt Daten von der AS/400?
Von XPPS, bin aber nur Anwender....
Mit freundlichen Grüßen
Pedro
http://www.gringokiller.de
Bild


G aus W
Hacker
Hacker
Beiträge: 346
Registriert: 3. Mai 2006, 10:39

Beitrag von G aus W » 5. Jun 2007, 14:42

Hallo Host,

auf welchem Weg ziehst Du Deine Daten von der AS/400?

Ich übertrage beispielsweise Daten in Form von Abfragen (Queries) unter Verwendung des ODBC-Treibers von der AS/400 nach OObase oder OOcalc.

Die Umlaute fehlten bei mir anfangs auch, bis ich das gesuchte Feld unter "Bearbeiten" -> "Datenbank" -> "Eigenschaften" -> "Zusätzliche Einstellungen" entdeckt habe: Es nennt sich "Dateikonvertierung / Zeichensatz", und dort mußte ich auf "Unicode [UTF-8]" umstellen. Seither sind meine ähs, öhs und ühs wieder richtig.

Wenn Du eine andere Form der Abfrage ohne OpenOffice wählst, kann ich wahrscheinlich nicht viel helfen. Generell würde ich aber auch dann davon ausgehen, die Daten kommen korrekt rüber, und es ist Sache des Programms auf der Client-Seite, die Konvertierung richtig vorzunehmen.

Ich hoffe, der Tip hilft!

Gruß Greg

Edit: Schön, wenn manche Dinge ungewollt zu Smilies werden... 8)

Host
Newbie
Newbie
Beiträge: 4
Registriert: 4. Jun 2007, 15:56

Beitrag von Host » 6. Jun 2007, 10:59

Hmm, ich lese in PHP (über ODBC) aus eine Datei der AS/400 und schreibe das Ergebnis dann (ebenfalls über ODBC) in die lokale MySQL.

Es zerlegt mir beim Lesen den Inhalt der PHP-Variablen bzw. füllt diese nicht richtig.


Codefragment:
==================
// Lesen von AS/400
$result=odbc_exec($source,"Select * from ECOLIB.ECP330");

// Feld entnehmen
$Bezeichnung=odbc_result($result,2);
===================

$Bezeichnung enthält Unsinn ab der Stelle im String wo sich vorher ein Umlaut befand.

Ist das, äquivalent zu deiner Einstellung, eine fehlende Einstellung für PHP?

G aus W
Hacker
Hacker
Beiträge: 346
Registriert: 3. Mai 2006, 10:39

Beitrag von G aus W » 6. Jun 2007, 11:42

Hallo Host,

leider kenne ich mich mit PHP nicht aus, aber was passiert denn, wenn Du - laienhaft gesprochen - die PHP-Variable so vordefinierst, daß sie "weiß", daß sie UTF-8-kodierten Text zu erwarten hat?

Sollte das keine praktikable Lösung sein, würde ich Dir empfehlen, evtl. mal in einem der IBM-Linux-Foren nachzufragen.

Gruß Greg

Antworten