Große Mengen von Text über GET (alternative?)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Große Mengen von Text über GET (alternative?)

    Ich muss quick and dirty ein System bauen, was verschiedene Templates in verschiedenen Konstellationen darstellt.
    Eine in meinen Augen tolle ist, ist es auf papier ein Schema zu basteln, was ungefährt so aussieht:

    Code:
    array(
      "main" => array("footer" => "mein footer template");
    );
    Das bedeutet dem eltern template main wird der marker footer durch "mein footer template" ersetzt.
    Nun will ich es aber möglichst dynamisch halten und quasi von einem Link zu einem anderen Link die Konfiguration vollständig ändern. Ich hab bereits einen Parser, der den Code da oben wunderbar in eine fertige HTML Seite rendert, nur muss ich diese Configs ja irgendwie transportieren, der Sinn ist, dass ich mehrere Links in dem Stil habe:

    Code:
    <a href="index.php?ParamterA" > Config a </a>
    <a href="index.php?ParamterB" > Config b </a>
    Dafür verwende ich ein base64_encode(serialize($meinArray));
    Der Haken ist, dass diese Arrays gerne komplex werden und da GET in der Regel 255 Bytes unterstüzt, such ich einen Weg, wie ich diese Configs reduziere, per POST kann ich die nicht schicken, dass ist ein zu großer Aufwand für nen <a> tag.

    Gibt es einen anderen Weg, die Daten zu reduzieren? Eine indizierung klappt nur bedingt, da ich als Parameter auch mal Strings übergebe und diese ja schlecht indiziert werden können( so wie zum Beispiel alle Templates in einem Ordner als Nummer definiert werden können)

    Eine Alternative ist ein gzcompress der serialisierten Arrays und ein anschließendes base64_encode, aber das encode macht die Komprimierung fast wertlos
    Zuletzt geändert von Seikilos; 08.06.2008, 19:02.
    SQL Injection kitteh is...

  • #2
    Wenn du die Kofigs nicht über get mitschicken kannst, bleibt dir nichts anderes übrig, als sie irgendwo zu speichern und nur einen Zeiger zu übergeben.

    Möglichkeiten: File/PHP-Code/Cookie/Session

    Als Zeiger würde sich z.B. ein MD5-Hash anbieten, aber auch "Hund, Katze und Maus".

    Kommentar


    • #3
      Das ist schwierig, denn die Konfigurationen sind nirgends gespeichert, sondern werden dynamishc nur vom Paramter der Übergabe definiert...
      SQL Injection kitteh is...

      Kommentar


      • #4
        Du kannst sie aber doch speichern, wenn sie erzeugt werden.

        Wenn du unbedingt über get willst, dann bleibt nur die Komprimierung. Da das aber nicht ausreicht, hast du keine Möglichkeit mehr Daten per GET zu schicken als technisch möglich.

        Kommentar


        • #5
          Ja, vielleicht sollte ich wirklich ne Config für die Kombinationen erstellen.

          Danke für den Tipp
          SQL Injection kitteh is...

          Kommentar


          • #6
            Tipp am Rande:
            Niemals serialisierte Daten vom Browser akzeptieren!
            Siehe google: "php unserialize Buffer Overflow"
            Wir werden alle sterben

            Kommentar

            Lädt...
            X