jan: zeichenbeschränkung beim IE?

hallo,

hab folgendes problem:

ich übergeb per script von einer seite auf eine andere per a href eine menge von variablen und deren inhalte (ca. 80 variablen).

nun hab ich festgestellt, dass das ganze mit netscape wunderbar fkt., aber nicht mit dem IE.

wir haben jetzt ne weile getüftelt und rausbekommen, dass beim IE bei ca 800 zeichen ende ist. wenn die gesamten variableninhalte also mehr als 800 zeichen in der summe besitzen, steigt IE aus, dass heißt wenn ich auf den button zum linken klicke, passiert einfach gar nichts :-(

wie gesagt, das ganz ist mit netscape kein problem. woran kann das den liegen?

danke für eure tipps

jan

  1. Vorneweg: Ich halte es nicht für sinnvoll, so viele Variablen in der URI zu übergeben... öffne eine Session oder übergeb die Variablen über POST.

    Warum es nicht geht: Es gibt, soweit ich weiß, eine Maximallänge für den URI Request. Kann sein dass der Browserabhängig ist, aber auf jeden Fall ist er vorhanden ...

    Andere Frage: Warum musst du denn alle Variablen über die URI weitergeben? Das lässt sich doch sicherlich umgehen...

    Gruss
    Stefan

    1. Andere Frage: Warum musst du denn alle Variablen über die URI weitergeben? Das lässt sich doch sicherlich umgehen...

      ich will mal so sagen, ich hab von sessions keine ahnung weiter und weiß nicht wie sowas fkt. (ich weiß, dass das ne alternative wäre)
      bis jetzt hab ich die übergabe immer per verlinkung gemacht-also mit a href und das klappte auch immer.

      jan

      1. ganz am anfang von jedem deiner scripte:

        <?php session_start(); ?>

        fertig...

        Variablen kannst du über <?php session_register("<varname>"); ?> in die session schreiben und ausgelesen werden die automatisch (sofern es nicht abgeschaltet wurde, oder über <?php echo $_SESSION['<varname>']; ?> ...

        also einfacher gehts nicht.
        schau einfach mal unter php.net => Session.

        Gruß
        Stefan

        1. Hallo,

          bevor Du "session_register" verwendest, lese zuerst

          http://de2.php.net/session_register

          hth & Grüsse

          Frankie

        2. Moin moin,

          Variablen kannst du über <?php session_register("<varname>"); ?>

          besser ist es <?php $_SESSION['variablenname']=$variable; ?> zu verwenden.
          Stichwort register_globals.

          Jan kann ich sonst noch ein gutes Session-Tutorial empfehlen:
          http://tut.php-q.net/sessions.html

          Lesenswert ist auch http://www.php-faq.de/ch/ch-version4_session.html.

          Viel Spaß beim umsetzen, Jan.

          Gruß
          Patrick, der in einem LAN-Party-Script (also quasi Intranet) bis zu 450 Zeichen _problemlos_ per Get übergibt.

  2. hi,

    ich übergeb per script von einer seite auf eine andere per a href eine menge von variablen und deren inhalte (ca. 80 variablen).

    also parameter-übergabe per GET.

    wir haben jetzt ne weile getüftelt und rausbekommen, dass beim IE bei ca 800 zeichen ende ist.

    die maximale länge eines solchen URL ist afaik gar nicht definiert, also setzen die browser-hersteller ihre eigenen limits.
    sich also zu "mäßigen", was den umfang von parameterübergaben per URL angeht, ist immer ratsam.

    wie gesagt, das ganz ist mit netscape kein problem. woran kann das den liegen?

    siehe oben, beschränkung des browsers.

    danke für eure tipps

    überlege dir, ob du wirklich mit jedem link so viele werte übergeben musst.
    wenn ja, wird dir wohl nur übrig bleiben, auf POST und damit auch auf formulare zu übergabe der daten umzusteigen.
    aber vielleicht reicht es ja auch aus, wenn du nur den kleinen ausschnitt der wertemenge mit dem link übergibst, der sich verändert hat - und den rest serverseitig in einer session hinterlegst ...?

    gruss,
    wahsaga