phpbar.de logo

Mailinglisten-Archive

AW: [php] Zeichencodierung Russisch

AW: [php] Zeichencodierung Russisch

Jens Vetter vetter at creative-minds.de
Die Jan 20 13:56:21 CET 2004


Hi Norbert,

danke für Deine Antwort und gleichzeitig auch herzlichen dank an alle 
anderen.

Die russiche Vertretung meiner Kunden möchte leider nicht online pflegen 
- also kein PHPMyAdmin.

Es kommen also Russische Texte aus einer Exceltabelle.

Die kann ich als über Excel CSV und UTF-Konvertierung in MySQL importieren.

Nur wenn mein Kunde oder ich selber Änderungen über PHPMyAdmin oder ein 
Formular vornehmen möchte, sieht man halt nur UTF-Zeichen.

Werden nun Einträge per Drag&Drop aus Excel in PHPMyAdmin kopiert, so 
wandelt dieser die Daten in die Entities-schreibweise.

Und dieser Mix aus UTF und Entities ist irgendwie tötlich und nicht mehr 
zu pflegen.

Also wichtig ist eine einfache Pflegemöglichkeit für einen CSV-Import 
und gleichzeitig einer Pflege von Hand.


Oh man,

hoffentlich hast Du oder auch die anderen einen Lösungsansatz.

Gruss,
Jens.


--> bitte weiterlesen ...


Norbert Pfeiffer schrieb:

> Hi Jens,
> 
> habe keine Ahnung, was Du da treibst - aber:
> 
> In eine DB gehoeren keine Entities, sondern nur ganz normaler
> Text. Es ist voellig egal ob das Unicode ist oder nicht.
> 
> Wenn Du Mehrsprachigkeit realisieren musst, dann brauchst Du
> dazu eine zweite Spalte/Tabelle, je nach Datenmodel, in der
> der jeweilige Zeichensatz fuer den Text hinterlegt ist.

Es besteht eine Tabelle:


CREATE TABLE uebersetzungen (
   ueberid int(11) NOT NULL auto_increment,
   bezeichnung_de text NOT NULL,
   bezeichnung_en text,
   bezeichnung_fr text,
   bezeichnung_es text,
   bezeichnung_nl text,
   bezeichnung_it text,
   bezeichnung_pl text,
   bezeichnung_cz text,
   bezeichnung_hu text,
   bezeichnung_ru text,
   PRIMARY KEY  (ueberid),
   KEY ueberid (ueberid),
   FULLTEXT KEY bezeichnung_de (bezeichnung_de),
   FULLTEXT KEY bezeichnung_en (bezeichnung_en),
   FULLTEXT KEY bezeichnung_fr (bezeichnung_fr),
   FULLTEXT KEY bezeichnung_es (bezeichnung_es),
   FULLTEXT KEY bezeichnung_nl (bezeichnung_nl),
   FULLTEXT KEY bezeichnung_it (bezeichnung_it),
   FULLTEXT KEY bezeichnung_pl (bezeichnung_pl),
   FULLTEXT KEY bezeichnung_cn (bezeichnung_cz),
   FULLTEXT KEY bezeichnung_hu (bezeichnung_hu),
   FULLTEXT KEY bezeichnung_ru (bezeichnung_ru)
) TYPE=MyISAM;



> 
> Schickst Du den unbehandelten Text mit dem richtigen Header an
> die Browser, sollten sie es auch mit der Darstellung packen.

Funktioniert wunderbar. Kein Thema. Die Internetseite bekommt den Header

$charset = "koi8-r";
$header = "Content-Type: text/html; charset=".$charset."";
header ($header);

> 
> Jede andere Vorgehensweise stellt Dich irgendwann vor Probleme,
> die man ohne grossen Aufwand nicht mehr loesen kann ...
> 
> 
> m. b. G. Norbert
> _____________________
> normal:  02686-987103
> Notruf:  0177-2363368
> ---------------------
> e.o.m.
> 




php::bar PHP Wiki   -   Listenarchive