griechischer Buchstabe wird nicht richtig angezeigt
pathos
- https
0 Felix Riesterer- php
0 pathos
0 Beat0 pathos
0 Der Martin0 pathos
Ich habe folgendes Problem.
Ich übergebe per GET einen Wert, dieser Wert wird aber beim Auslesen nicht richtig interpretiert.
Es handelt sich dabei um griechische Buchstaben. Das was ich nicht verstehen kann ist, dass alle anderen griechische Buchstaben interpretiert werden mit Ausnahme des Buchstaben Π (Pi).
Beispiel: Aufruf des Links: www.test.de?name=Π
Beim Auslesen der Variable „ echo $_GET[„name“]; „ erhalte ich anstatt dem griechischen Buchstaben Π ein rechteckiges Kästchen.
Das verrückte dabei ist, dass alle anderen griechischen Zeichen korrekt interpretiert werden, nur das Π macht Schwierigkeiten.
Die Zielseite mit utf-8 kodiert.
Danke für eure Hilfe.
Lieber pathos,
Die Zielseite mit utf-8 kodiert.
und wie ist das HTML-Dokument kodiert, in dem die Usereingaben stattfinden? Und wie ist das PHP-Script dazu kodiert?
Liebe Grüße,
Felix Riesterer.
Ich lese per Javascript ein Textfeld aus, welches mit griechischen Buchstaben gefüllt wird.
Der ausgelesene Wert wird einem String übergeben, der dann erneut als Javascript eine Seite aufruft.
Die Ursprugsseite ist ebenfalls wie die Zielseite in utf-8 kodiert. Die Javascript Datei ist als normale txt Datei abgespeichert.
Beispiel:
var name=document.getElementById("name").value;
var url =”http://www.example.com?name=”+name
window.location.href=url;
Der Buchstabe wird korrekt ausgelesen und übergeben, das habe ich getestet. Das Problem liegt beim auslesen der Variablen auf der Zielseite. Auch beim Quelltext ist anstatt des Π (Pi) ein Kästchen zu sehen. Das Problem betrifft die 7er + 8er Version des Microsoft Internet Explorer. Die Browser Firefox und Opera machen alles richtig.
Lieber pathos,
var url =”http://www.example.com?name=”+name
das ist Mist. Besser Du kodierst kontext-gerecht. Das hatten wir doch gerade in einer anderen Diskussion...? Also in Deinem Falle solltest Du den Inhalt von "name" entweder mit http://de.selfhtml.org/javascript/objekte/unabhaengig.htm#encode_uri@title=encodeURI() oder mit http://de.selfhtml.org/javascript/objekte/unabhaengig.htm#encode_uri_component@title=encodeURIComponent() kodieren. Vielleicht ist aber anstatt der beiden genannten Funktionen http://de.selfhtml.org/javascript/objekte/unabhaengig.htm#escape@title=escape() das Mittel der Wahl - probiere es aus!
Und dass Du Dein JavaScript "als normale txt Datei abgespeichert" hast, sagt mir so ziemlich überhaupt nichts über ihre Kodierung aus (ISO oder UTF?)!
Liebe Grüße,
Felix Riesterer.
Hallo Felix,
ich werde es ausprobieren.
Danke
Beispiel: Aufruf des Links: www.test.de?name=Π
Die Domain existiert. Bist du Ihr Inhaber? Wenn nein, dann lass es auf Domains zu verweisen, die nichts mit deinem Problem zu tun haben.
Verwende statt dessen die Domain example.org example.com oder auch domain.example die für Beispielzwecke existieren
mfg Beat
Nein bin ich nicht. Danke für den Hinweis.
Hallo,
Ich übergebe per GET einen Wert, dieser Wert wird aber beim Auslesen nicht richtig interpretiert.
offensichtlich schon bei der Übergabe an den Server. Welchen Browser verwendest du da?
Es handelt sich dabei um griechische Buchstaben. Das was ich nicht verstehen kann ist, dass alle anderen griechische Buchstaben interpretiert werden mit Ausnahme des Buchstaben Π (Pi).
Das wundert mich allerdings auch. Da diese Zeichen alle im URL-Kontext nicht erlaubt sind, müssten sie allesamt URL-codiert werden. Dass dein Browser das nicht von sich aus tut, ist erstaunlich.
Beispiel: Aufruf des Links: www.test.de?name=Π
Bitte verwende für Beispiele die Domainnamen, die extra dafür vorgesehen sind. Die Stiftung Warentest wird sich grün und blau ärgern über den zigtausendfachen Missbrauch ihres Domainnamens.
Beim Auslesen der Variable „ echo $_GET[„name“]; „ erhalte ich anstatt dem griechischen Buchstaben Π ein rechteckiges Kästchen.
[...]
Die Zielseite mit utf-8 kodiert.
Und die Quellseite - also diejenige, die den Link enthält? Hast du das mal als Beispiel online?
Das verrückte dabei ist, dass alle anderen griechischen Zeichen korrekt interpretiert werden, nur das Π macht Schwierigkeiten.
So long,
Martin
Ich lese per Javascript ein Textfeld aus, welches mit griechischen Buchstaben gefüllt wird.
Der ausgelesene Wert wird einem String übergeben, der dann erneut als Javascript eine Seite aufruft.
Die Ursprugsseite ist ebenfalls wie die Zielseite in utf-8 kodiert. Die Javascript Datei ist als normale txt Datei abgespeichert.
Beispiel:
var name=document.getElementById("name").value;
var url =”http://www.example.com?name=”+name
window.location.href=url;
Der Buchstabe wird korrekt ausgelesen und übergeben, das habe ich getestet. Das Problem liegt beim auslesen der Variablen auf der Zielseite. Auch beim Quelltext ist anstatt des Π (Pi) ein Kästchen zu sehen. Das Problem betrifft die 7er + 8er Version des Microsoft Internet Explorer. Die Browser Firefox und Opera machen alles richtig.
Leider niIch lese per Javascript ein Textfeld aus, welches mit griechischen Buchstaben gefüllt wird.
Der ausgelesene Wert wird einem String angehangen, der dann erneut als Javascript eine Seite aufruft.
Die Ursprugsseite ist ebenfalls wie die Zielseite in utf-8 kodiert. Die Javascript Datei ist als normale txt Datei abgespeichert.
Beispiel der js Datei:
var name=document.getElementById("name").value;
var url =”http://www.example.com?name=”+name
window.location.href=url;
Der Buchstabe wird korrekt ausgelesen und übergeben, das habe ich getestet. Das Problem liegt beim auslesen der Variablen auf der Zielseite. Auch beim Quelltext ist anstatt des Π (Pi) ein Kästchen zu sehen. Das Problem betrifft die 7er + 8er Version des Microsoft Internet Explorer. Die Browser Firefox und Opera machen alles richtig.