Markus: Variablenübergabe in Netscape problematisch

Hallo Leute!

Ich übergebe eine Variable in einem HTML-Fenster an ein PHP-Skript; die Variable ist in einem Pull-down-Menü!

Wenn ich die Variable übergebe, zb mehrere Worte mit Leerzeichen, (zB "Rüdesheim am Rhein"), dann funktioniert die Übergabe nur in IE. Ich versuche diesen Ort in Mysql zu finden, wobei die Suche nur in IE erfolgreich ist. In Netscape findet er den Ort nicht.

Weiß jemand Rat, wo der Fehler liegen kann???

Danke und schöne Grüße

Markus

  1. Hi,

    Ich übergebe eine Variable in einem HTML-Fenster an ein PHP-Skript;

    und wie willst Du das bitte machen? Von Client zu Server gibt es nur HTTP, und HTTP kennt keine Variablen. Vermutlich meinst Du Parameter.

    Wenn ich die Variable übergebe, zb mehrere Worte mit Leerzeichen, (zB "Rüdesheim am Rhein"),

    Sowohl die Leerzeichen als auch die Umlaute müssen URL-kodiert werden. PHP hält dafür Funktionen bereit.

    dann funktioniert die Übergabe nur in IE.

    Ja. Krank, oder? Das Sch**ß-Ding kann einfach kein HTTP, ist 'ne Gefahr für's Netz. Man sollte es verbieten.

    Cheatah

    1. Hallo nochmals!

      ich mache es mit:

      document.location.href = "phpscript.php?variable=variableninhalt";

      In Summe übertrage ich um die 20 Variablen, dadurch ergibt sich eine lange Zeichenkette!

      Wenn ich zb "Hamburg" übertragen möchte, ist alles kein problem. Wenn ich jedoch "Rüdesheim am Rhein" übertrage, gibt es mit Netscape Probleme.

      Ich glaube, dass es an den Leerzeichen scheitert, hab auch schon ersetzt mit %20, aber es will einfach nicht laufen!

      IE und Opera sind ziemlich unproblematisch auf diesem gebiet!

      lg

      Markus, der mit Netscape sein Leid hat ;)

      Hi,

      Ich übergebe eine Variable in einem HTML-Fenster an ein PHP-Skript;

      und wie willst Du das bitte machen? Von Client zu Server gibt es nur HTTP, und HTTP kennt keine Variablen. Vermutlich meinst Du Parameter.

      Wenn ich die Variable übergebe, zb mehrere Worte mit Leerzeichen, (zB "Rüdesheim am Rhein"),

      Sowohl die Leerzeichen als auch die Umlaute müssen URL-kodiert werden. PHP hält dafür Funktionen bereit.

      dann funktioniert die Übergabe nur in IE.

      Ja. Krank, oder? Das Sch**ß-Ding kann einfach kein HTTP, ist 'ne Gefahr für's Netz. Man sollte es verbieten.

      Cheatah

      1. Hi,

        In Summe übertrage ich um die 20 Variablen,

        Du überträgst exakt gar keine Variable, dafür aber 20 Parameter.

        dadurch ergibt sich eine lange Zeichenkette!

        Dass die URL in der Praxis einer unbestimmbaren Längenbeschränkung unterliegt, ist Dir bewusst?

        Wenn ich jedoch "Rüdesheim am Rhein" übertrage, gibt es mit Netscape Probleme.

        Es ist ein Problem, dass es mit dem IE _kein_ Problem gibt. In einer URL dürfen Leer- und Sonderzeichen nicht vorkommen. Nutze die JavaScript-Funktion escape() - da Du offenbar eh bereits User mit deaktiviertem oder ganz ohne JavaScript ausschließt, verlierst Du hierdurch niemanden zusätzlich.

        IE und Opera sind ziemlich unproblematisch auf diesem gebiet!

        Nein, sie sind problematisch. Von den von Dir getesteten Browsern zeigt nur Netscape die erwartete Reaktion, mit der ungültigen URL nichts anfangen zu können.

        Cheatah

      2. Hi Markis,

        In Summe übertrage ich um die 20 Variablen, dadurch ergibt
        sich eine lange Zeichenkette!

        erfolgt diese Übergabe durch einen Link oder durch ein Formular?
        (Es gibt neben GET noch andere Methoden ...)

        Viele Grüße
              Michael