phpac coding puzzle (2)

Christoph Schönberger cschoenberger at ghil.ac.uk
Mo Mär 22 11:06:17 CET 2004


Liebe Liste,

das Problem, das ich in meiner Mail vom Freitag zu beschreiben
versucht habe (unterschiedliche Behandlung der Umlaute in der
Benutzereingabe bei "find" und "qrix" in phpac), betrifft nicht nur 
ANSI-Datenbanken. Es zeigt sich auch bei der Standardinstallation
der DEMO-Datenbank. Man suche z.B. nach Personennamen "Mueller"
(mit u-Umlaut statt "ue"):
"Registereinblick" oeffnet die richtige Stelle im Register,
"Suchbefehl ausfuehren" findet nichts.

Inzwischen konnte ich aber das Problem auf eine auskommentierte
Zeile in den Avanti-Jobs zurueckfuehren. Zur Behebung genuegt
es, in den Dateien av_rset.php bzw. av_list.php die Zeile 41 zu 
aktivieren:
// "switch coding",

((Warum wurde diese Zeile auskommentiert??))

Viele Gruesse,

Christoph Schoenberger


> -----Original Message-----
> From: Christoph Schönberger
> Sent: Freitag, 19. März 2004 11:55
> To: Diskussionsliste Allegro-C
> Subject: phpac coding puzzle
> 
> Liebe Liste,
> 
> ich bin gerade dabei, eine wissenschaftliche Datenbank
> mit phpac fuer den Internetzugang einzurichten. Dabei bin
> ich auf ein Kodierungsproblem gestossen, das ich noch nicht
> durchschauen konnte. Dies ist die Ausgangslage:
> 
> Die Datenbank ist in ANSI kodiert. Dementsprechend enthaelt
> meine Indexparameterdatei eine Tabelle ANSI -> ASCII sowie die
> Sortiertabelle i.xPT. Dazu kommen noch die Umkodierungen fuer
> UTF-8.
> 
> Die Suchmaske detail.php bietet zwei Methoden der Uebermittlung
> an:
> - "Registereinblick" (Aufblaettern des Index mit qrix)
> - "Suchbefehl ausfuehren" (find-Befehl)
> 
> Und jetzt passiert das Raetselhafte:
> Ein Suchbegriff mit Umlaut fuehrt nur dann zum richtigen
> Ergebnis, wenn ich bei
> "Registereinblick" eine Tabelle UTF-8 -> ANSI
> verwende, bei
> "Suchbefehl ausfuehren"  aber eine Tabelle UTF-8 -> ASCII.
> Das Dumme dabei ist natuerlich, dass ich nur eine Version der
> Tabellen einbinden kann.
> 
> Es scheint so, als ob "find" die Tabelle ANSI -> ASCII nicht
> benutzt, und deshalb von UTF-8 direkt nach ASCII umkodieren muss,
> waehrend "qrix" alle Tabellen abarbeitet.
> 
> Kann mir jemand sagen, was hier genau passiert und wie man
> trotz alledem eine ANSI-Datenbank korrekt ansprechen kann?
> 
> Viele Gruesse aus London,
> 
> Christoph Schoenberger
> 
> --------------------------------------------
> Christoph Schoenberger
> German Historical Institute
> 17 Bloomsbury Square
> London WC1A 2NJ
> Great Britain
> Tel. 020 7309 2022/2032
> FAX 020 7309 2072
> --------------------------------------------





Mehr Informationen über die Mailingliste Allegro