URL Ausgabe formatieren bei Methodenaufruf aus einem Formular

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

  • URL Ausgabe formatieren bei Methodenaufruf aus einem Formular

    Moin,

    ich habe folgendes Problem:

    ich habe eine Klasse "SUCHEN" mit den Methoden "KAT1" und "KAT2".

    In einem Formular nachfolgender Form übergebe ich die Parameter an die Klasse:

    Code:
     
    <form action="/SUCHEN/KAT1/" name="kat1">
    ...
    </form>
    <form action="/SUCHEN/KAT2/" name="kat2">
    ...
    </form>
    Innerhalb der beiden Formulare sind jeweils zwei <select>-Felder, in denen ich die Kategorien 1 & 2 auswählen kann. (2 ist leer, wenn 1 noch nicht ausgewählt ist)

    In dem Moment, in dem ich in Feld 1 etwas auswähle, sieht meine Adresszeile folgendermaßen aus:

    Für das Auswahlfeld 2 sieht das folgendermaßen aus:

    Ich möchte als Adresszeile gerne die folgenden Ausgaben haben:

    Ist das machbar mit RewriteRules in der .htaccess? Wenn ja, wie muß dann dort die Zeile ausschauen?
    Kann ich meinen Quellcode so belassen, oder muß ich an der Actionanweisung im Forumlar oder sogar innerhalb der Klasse noch etwas ändern? Muß das Formular method="post" oder "get" sein?

    Danke schonmal für Eure Antworten,

    Gruß
    Jens
    Zuletzt geändert von jhartlep; 30.03.2007, 17:46.

  • #2
    Ja, das ist machbar.

    ModRewrite leitet den QueryString intern in der "richtigen" Form weiter, dein PHP merkt also nichts davon (wenn alles gut geht).
    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
    var_dump(), print_r(), debug_backtrace und echo.
    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

    Kommentar


    • #3
      k, danke, dann muß ich mich also "nur" noch durch die Dokumentation von ModRewrite durcharbeiten...

      Kommentar


      • #4
        Original geschrieben von Shurakai
        Ja, das ist machbar.
        Aber nicht mit mod_rewrite, nicht mit PHP - nicht serverseitig.

        Der Query-String wird beim Abschicken eines Formulars vom Browser zusammengesetzt und an den URL angefügt - wenn daran etwas geändert werden sollte, müsste man mit Javascript eingreifen.

        Oder man nimmt gleich POST - dann tauchen die Parameter gar nicht im URL auf.


        @jhartlep: Lies bitte die Regeln, bzgl. der Verlinkung von Beispieldomains.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Upsi, Beispieldomains sind geändert - sorry.

          Naja, beim abschicken des 1. Formulars springe ich in die Methode der Klasse und werte dort die Daten aus.

          Dann erst springe ich in auf die Ausgangsseite zurück und habe dann halt - dank method="get" - die entsprechenden Parameter an der Ausgabe. Klar, wenn ich method="post" einstell, sind die Weg - nur wie kann ich dann die URL entsprechend der Vorgabe am Beginn formatieren (/SUCHEN/TEXT1/ bzw. /SUCHEN/TEXT1/TEXT2/)?

          Kommentar


          • #6
            Wie schon gesagt: Höchstens clientseitig, per Javascript.

            Vorm Abschicken des Formular eingreifen (onsubmit), gewünschten URL aus den Formulardaten zusammenstellen, und dann statt Abschicken des Formulars per location.href weiterleiten ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar

            Lädt...
            X