Simon: mod_rewrite Fragen

Hi Forum!

ich habe mal paar Fragen zu dem mod_rewrite:

meine Regel sieht wie folgt aus:

RewriteEngine on
RewriteRule ^(.*)/(.*)/(.*).html$ index.php?id=$1&artikel=$2&abschnitt=$3 [L]

Meine Fragen dazu:

Wie verhält es sich, wenn ich statt allen 3 Variablen nur 1 oder 2 übergebe, und somit die 3. oder auch die 2. und 3. fällt weg?

Nun enthält meine erste Variable "id" in der PHP Form folgenden String "23_2_1", dann müsste laut der Regel es so aussehen [...].de/23_2_1/...

Wie bekomme ich aber hin, dass er statt 23_2_1 einfach den ersten Teil weg lässt von diesem String. Also mod_rewrite einfach nur schreibt 2_1 statt 23_2_1?

Ja, ich weiß dass ich mich mal mit ReExp beschäftigen sollte ... kommt noch, wenn ich genug Zeit habe ;)

Danke für jede sinnvolle Hilfe!!

Simon

  1. Hallo Simon,

    Meine Fragen dazu:

    Wie verhält es sich, wenn ich statt allen 3
    Variablen nur 1 oder 2 übergebe, und somit
    die 3. oder auch die 2. und 3. fällt weg?

    Dann wird der Request von dieser RewriteRule nicht
    erfasst.

    Nun enthält meine erste Variable "id" in der
    PHP Form folgenden String "23_2_1", dann müsste
    laut der Regel es so aussehen
    [...].de/23_2_1/...

    Wie bekomme ich aber hin, dass er statt 23_2_1
    einfach den ersten Teil weg lässt von diesem
    String. Also mod_rewrite einfach nur schreibt
    2_1 statt 23_2_1?

    Indem du den Teil-RegExp entsprechend aenderst.
    Statt /(.*)/ eben /23_(.*)/.

    Ja, ich weiß dass ich mich mal mit ReExp
    beschäftigen sollte ... kommt noch, wenn ich
    genug Zeit habe ;)

    Nimm dir die Zeit. Du kannst hier nicht erwarten,
    dass wir dir deine Probleme loesen.

    Gruesse,
     CK

    --
    Sich erinnern bedeutet, aus einer Erfahrung nicht ausreichend gelernt zu haben.
    1. Danke für deine Mühe!

      Ja, ich weiß dass ich mich mal mit ReExp
      beschäftigen sollte ... kommt noch, wenn ich
      genug Zeit habe ;)

      » Nimm dir die Zeit. Du kannst hier nicht erwarten,
      » dass wir dir deine Probleme loesen.

      Ist das nicht aber der Sinn eines/dieses Forums?

      Simon

      1. Hallo Simon,

        » Nimm dir die Zeit. Du kannst hier nicht erwarten,
        » dass wir dir deine Probleme loesen.

        Ist das nicht aber der Sinn eines/dieses Forums?

        NEIN, definitiv nicht!

        Der Sinn dieses Forums ist nicht, dir deine Probleme zu lösen,
        sondern dir dabei zu helfen deine Probleme selbst zu lösen.
        Also anstatt dir den richtigen regulären Ausdruck hinzuschreiben,
        dir den Tip zu geben, dich mit regulären Ausdrücken zu beschäftigen.
        Stichwort: SELF

        CYa
        GONZO

        1. Der Sinn dieses Forums ist nicht, dir deine Probleme zu lösen,
          sondern dir dabei zu helfen deine Probleme selbst zu lösen.
          Also anstatt dir den richtigen regulären Ausdruck hinzuschreiben,
          dir den Tip zu geben, dich mit regulären Ausdrücken zu beschäftigen.

          Ja, dann soll aber auch so geholfen werden, dass wenn man 0-Ahnung von dem Gebiet hat, derjenige die Lösung nicht erst nach 20x Mal posten und Leute nerven hat, sondern präzise und direkt!

          Stichwort: SELF

          Du gehtst ja auch nicht in eine Werkstatt, sagst mein Auto macht komische Geräusche und erwartest dann, dass die ein Meister sagt: na dann beschäftigen sie sich mal mit Kompressortechnik, Drosselklappenpotentiometer, Abgasanlagen und TÜV Auflagen!

          Nein, Du erwartest (und das ist in diesem Fall anders als im Forum), dass er Dir für Geld Dein Auto repariert bzw. sagt, was wo und wie defekt ist.

          Nach Deiner Meinung, gehe ich ins Forum, damit die mir sagen: lese mal was zu Java und PHP dann kannst du es selber. Ja, dass weiß ich aber auch schon vorher, dass ich dass Lesen müsste damit ich das verstehe.

          Da ich aber nicht alles wissen kann bzw. nicht die Zeit haben, das und das und dann noch das zu Lesen und Verstehen (!! - AHA!), gibt es Foren. Wo nette Leute, wie ich anderen bei ihren Problemen helfen.

          Wenn Du diese Einstellung hast, dann Poste nur 1x Mal im Forum, am besten so: "Wenn ihr keine Ahnung habt oder nicht wisst wie es geht, dann lest einfach nach oder lernt es, damit ihr dann wisst was ihr jetzt noch falsch macht bzw. wisst wie es richtig geht.". Damit wäre Deine Aufgabe hier erfüllt und du könntest Dich anderen Dingen deines Lebens zuwenden. ...

          Weisst Du was ich damit sagen will?! Ich hoffe mal schon ... soll jetzt nicht böse sein, aber die Idee eines Forums ist doch eine Andere: Helfen! Manchmal Helfen zu Verstehen, Helfen das es funktioniert, Helfen um des Helfens willen. Amen! ;)

          Simon

          1. Hallo,

            Du gehtst ja auch nicht in eine Werkstatt, sagst mein Auto macht komische Geräusche und erwartest dann, dass die ein Meister sagt: na dann beschäftigen sie sich mal mit Kompressortechnik, Drosselklappenpotentiometer, Abgasanlagen und TÜV Auflagen!

            Nein, Du erwartest (und das ist in diesem Fall anders als im Forum), dass er Dir für Geld Dein Auto repariert bzw. sagt, was wo und wie defekt ist.

            Den kleinen, aber wesentlichen Unterschied zwischen der Werkstatt
            und diesem Forum hast Du ja selbst erkannt: Geld.
            Hier kriegst Du Antworten umsonst.

            Dafuer auch solche, die Dir nicht passen.
            Wenn Du nur hoeren willst, was Dir passt, suche einen
            "Webmaster", der Ahnung hat und fuer Geld alles tut.

            Es ist IMHO nicht sinnvoll, Loesungen auf dem Silbertablett
            zu praesentieren, sondern sinnvoller, darauf hinzuweisen,
            wie der Fragende _selbst_ zur Loesung findet.

            Da ich aber nicht alles wissen kann bzw. nicht die Zeit haben, das und das und dann noch das zu Lesen und Verstehen (!! - AHA!), gibt es Foren. Wo nette Leute, wie ich anderen bei ihren Problemen helfen.

            Lies mal, was ganz oben auf der Seite
            http://forum.de.selfhtml.org/
            steht:
            "Es wird erwartet, daß bei Problemen erst einmal in SELFHTML,
            im  Forumsarchiv oder in anderen Quellen nach einer Lösung
            gesucht wird."

            Auch der FAQ-Eintrag </faq/#Q-07a> macht deutlich,
            um was es hier geht:
            "Hilfe zur Selbsthilfe" (meine Formulierung, transferiert
            aus dem Bereich der Entwicklungshilfe...)

            Gruesse,

            Thomas

            1. Hallo!

              Den kleinen, aber wesentlichen Unterschied zwischen der Werkstatt
              und diesem Forum hast Du ja selbst erkannt: Geld.
              Hier kriegst Du Antworten umsonst.

              Dafuer auch solche, die Dir nicht passen.
              Wenn Du nur hoeren willst, was Dir passt, suche einen
              "Webmaster", der Ahnung hat und fuer Geld alles tut.

              Ja, das ist ja auch klar! Nur ist mir das von GONZO doch zu krass, oder wie?

              Es ist IMHO nicht sinnvoll, Loesungen auf dem Silbertablett
              zu praesentieren, sondern sinnvoller, darauf hinzuweisen,
              wie der Fragende _selbst_ zur Loesung findet.

              Ja klar, geht mir bei der Arbeit genauso. Wenn ich etwas verstehe warum es so und nicht so funktioniert lerne ich dabei, als nur zu wissen, aha - das geht jetzt so. Es kommt auf den Lern- und Versteh Effekt an!

              Aber manchmal hast du keine Zeit oder auch keine Lust, dich durch Bürcher und Anleitunge, ManPages etc zu kramen ... da frage ich jemanden, der es wissen könnte und der gibt mir a.) die Lösung b.) einen Tip c.) einen Lösungsansatz und erklärt oder deutet die Problematik an

              a.) kann man hier selten erwarten, und wenn dann muss die frage 1x1 lauten ;)
              b.) schon, doch wenn ich weiß wo ich suchen muss verstehe ich es immer noch nicht (siehe "ein Meister sagt: na dann beschäftigen sie sich mal mit Kompressortechnik" ... ja toll! Da weiß ich woran es liegt, aber warum und wieso immer noch nicht. Eine Lösung kann ich nur finden, wenn ich den Grund/Ursache/Zusammenhänge kenne
              c.) in Ansätzen - ich kann nicht erwarten, dass mir Leute RegExp erklären oder die httpconf runterbeten!

              Aber so ein Mittelding zwischen allen dreien wäre doch wünschenswert!
              Und wenn es wirklich mal schnell gehen muss, ist manchmal selbst nicht die Zeit da es zu verstehen ;)

              Ich denke man darf aber auch nicht zuviel Emotionen in so ein Forum stecken!

              ...zu Lesen und Verstehen (!! - AHA!), gibt es Foren. Wo nette Leute, wie ich anderen bei ihren Problemen helfen.

              Lies mal, was ganz oben auf der Seite
              http://forum.de.selfhtml.org/
              steht:
              "Es wird erwartet, daß bei Problemen erst einmal in SELFHTML,
              im  Forumsarchiv oder in anderen Quellen nach einer Lösung
              gesucht wird."

              Ja, aber ich schreibe ja auch Lesen und Verstehen (!! - <b>AHA!</b>).
              Klar kann ich nachlesen, wei die RegExp in meinem Fall aussehen müssen aber ich muss es auch verstehen. Dazu braucht es Zeit, und die hat man u.U. nicht immer - ich habe dich noch nicht!

              Ohne Frage nehm ich mir irgendwann mal das O'Reilly Buch und schau mir die Teile an, aber jetzt brauche ich nur die eine Lösung - mehr nicht!

              "Hilfe zur Selbsthilfe" (meine Formulierung, transferiert
              aus dem Bereich der Entwicklungshilfe...)

              Das ist ja schön ... und warum hilft mir dann keiner?!

              GONZO:
              »»» » Nimm dir die Zeit. Du kannst hier nicht erwarten,
              »»» » dass wir dir deine Probleme loesen.
              »»»
              »»» Ist das nicht aber der Sinn eines/dieses Forums?
              »
              »NEIN, definitiv nicht!

              Na, wenn es hier keine Hilfe zur Selbsthilfe gibt, sondern nur kluge Ratschläge, wie: "ließ doch das Buch und poste hier nicht" gibt, na dann Danke GONZO & Co!!

              Bis jetzt (seit mehr als 4 Jahren) bin ich immer gut mit dem Forum gefahren ... noch nie hat mich jemand wegen einer Lösung so d*mlich
              angemacht! Die Zeiten ändern sich und auch die Menschen ...

              Ich glaub, ich lege mir eine Cornershop-CD in den Rekorder, lass das Forum Forum sein und mach mir einen schönen Fernsehabend ;)

              Simon

          2. Hallo Simon,

            Der Sinn dieses Forums ist nicht,
            dir deine Probleme zu lösen,
            sondern dir dabei zu helfen deine
            Probleme selbst zu lösen.
            Also anstatt dir den richtigen
            regulären Ausdruck hinzuschreiben,
            dir den Tip zu geben, dich mit
            regulären Ausdrücken zu beschäftigen.

            Ja, dann soll aber auch so geholfen
            werden, dass wenn man 0-Ahnung von dem
            Gebiet hat, derjenige die Lösung nicht
            erst nach 20x Mal posten und Leute
            nerven hat, sondern präzise und direkt!

            Es gibt viele andere Web-Foren, wo das so
            gehandhabt wird. Es steht dir jederzeit
            frei, dorthin auszuweichen, wenn dir der
            hiesige Stil nicht passt.

            Stichwort: SELF

            Du gehtst ja auch nicht in eine
            Werkstatt, sagst mein Auto macht
            komische Geräusche und erwartest dann,
            dass die ein Meister sagt: na dann
            beschäftigen sie sich mal mit
            Kompressortechnik,
            Drosselklappenpotentiometer,
            Abgasanlagen und TÜV Auflagen!

            Nicht alles, was hinkt, ist ein Vergleich.
            Bei einer Autowerkstatt wird eine
            Dienstleistung verkauft. Hier bezahlst du
            gar nix. Die Hilfe, die du hier bekommst,
            bekommst du von Leute, die freiwillig
            antworten, ohne (materiellen) Gegenlohn.
            Die Gruende hierfuer sind so verschieden
            wie es Sterne am Himmel gibt.

            Nein, Du erwartest (und das ist in
            diesem Fall anders als im Forum), dass
            er Dir für Geld Dein Auto repariert
            bzw. sagt, was wo und wie defekt ist.

            Du sagst es schon: du bezahlst Geld
            dafuer.

            Nach Deiner Meinung, gehe ich ins
            Forum, damit die mir sagen: lese mal
            was zu Java und PHP dann kannst du es
            selber. Ja, dass weiß ich aber auch
            schon vorher, dass ich dass Lesen
            müsste damit ich das verstehe.

            Dann tu das doch auch. Zu genaueren
            Problemen bekommst du dann auch genauere
            Antworten. Aber zu reinen Doku-Fragen
            wirst du hier hoechstens auf die
            entsprechende Doku verwiesen.

            Da ich aber nicht alles wissen kann
            bzw. nicht die Zeit haben, das und das
            und dann noch das zu Lesen und
            Verstehen (!! - AHA!),

            Aber von uns erwartest du das? Eine
            seltsame Einstellung.

            gibt es Foren.

            Falsch. Foren gibt es als
            Kommunikations-Plattform. Wozu auch immer.
            Dieses Forum gibt es, damit man sich bei
            Problemen helfen kann, die mit der Doku
            allein nicht mehr loesbar ist. Und fuer
            Leute, die auch verstehen moechten, was los
            ist. Die Energie des Verstehens.

            Weisst Du was ich damit sagen will?!
            Ich hoffe mal schon ... soll jetzt
            nicht böse sein, aber die Idee eines
            Forums ist doch eine Andere: Helfen!

            Gib einem Hungrigen ein Fisch, und er hat
            einen Tag zu essen. Lehre einen Hungrigen
            Angeln, und er hat sein Leben lang zu
            essen.

            Jemandem eine Loesung vorzusagen hilft
            nicht. Im Gegenteil, das hemmt.

            Gruesse,
             CK

            --
            Wer sich zu überschwänglich freut, wir später Grund zum Weinen haben.
            1. Hallo!

              Es gibt viele andere Web-Foren, wo das so
              gehandhabt wird. Es steht dir jederzeit
              frei, dorthin auszuweichen, wenn dir der
              hiesige Stil nicht passt.

              Wie gesagt, seit mehr als 4 Jahren mache ich hier mit.
              Bis jetzt brauchte ich noch nie ausweichen auf andere
              Foren! Klar steht mir was frei ...

              Nach Deiner Meinung, gehe ich ins
              Forum, damit die mir sagen: lese mal
              was zu Java und PHP dann kannst du es
              selber. Ja, dass weiß ich aber auch
              schon vorher, dass ich dass Lesen
              müsste damit ich das verstehe.

              Dann tu das doch auch.

              Das kann ich nicht, wieviele Bücher, ManPages, FAQ's und so soll ich lesen damit ich alles verstehe! Du liest doch auch nicht komplett die Debian Referenz, nur weil du wissen willst wie die mit apt was installieren willst. Du fragst nach ...

              Zu genaueren Problemen bekommst du dann auch genauere
              Antworten.

              Ja aber war mein Problem nicht genau definiert?

              Da ich aber nicht alles wissen kann
              bzw. nicht die Zeit haben, das und das
              und dann noch das zu Lesen und
              Verstehen (!! - AHA!),

              Aber von uns erwartest du das? Eine
              seltsame Einstellung.

              Ich erwarte nichts, bin immer erstaunt was ich bekomme (in diesem Fall ganz schön Nebenbeikram, der mit der Lösung nichts zu tun hat und reine Philosphie über Webforen ist).

              Ich spüre in deinen Antworten immer ein leichtes Gefühl von Hochnäsigkeit und

              Gib einem Hungrigen ein Fisch, und er hat
              einen Tag zu essen. Lehre einen Hungrigen
              Angeln, und er hat sein Leben lang zu
              essen.

              AHA! Das heißt gib ihm die Lösung dann hat er für immer dieses Problem bekämpft. Was du meinst ist aber: gib den Hunrigen den Tip, im Wasser schwimmen Fische und hol sie irgendwie raus. Wie du das machst, da gibt es Bücher drüber, die heißen Angeln for Dummies.

              Jemandem eine Loesung vorzusagen hilft
              nicht. Im Gegenteil, das hemmt.

              Ja, aber manchmal braucht er eben nur die und keine Erklärung warum und wieso. Stichpunkt: Bedürfnisse es Kunden am Markt (Geschäftsprozesse).  Manchmal brauchst du nur die Lösung und eben nicht das Verständnis darüber.

              So, ich hoffe diese Philosophische Runde ist damit gegessen .. habe echt keien Lust mehr darüber zu Reden ..

              Da kann ich gleich zu Theo (OpenBSD) gehen oder diem Linuxer frage, warum die für die Kernelentwicklung nicht CVS nehmen, sondern ein komerzielles Produkt. Alles Philosphie, worüber man sich ewig unterhalten kann.

              ES SEI WIE ES SEI ....

              Simon

              1. Hallo Simon,

                [... Doku lesen ...]
                Das kann ich nicht, wieviele Bücher,
                ManPages, FAQ's und so soll ich lesen
                damit ich alles verstehe!

                Wenn du das nicht kannst, wirst du die
                Aufgabe an jemand anderen abgeben muessen.
                Oder woanders fragen.

                Du liest doch auch nicht komplett die
                Debian Referenz, nur weil du wissen
                willst wie die mit apt was installieren
                willst.

                Richtig. Ich lese das Kapitel ueber apt.

                Du fragst nach ...

                Nein.

                Zu genaueren Problemen bekommst du
                dann auch genauere Antworten.

                Ja aber war mein Problem nicht genau
                definiert?

                Das Problem war eine Doku-Frage. Bitte
                reisse meine Zitate nicht aus dem
                Zusammenhang.

                Ich erwarte nichts,

                Das hoerte sich aber in deinem Posting
                anders an. Du erwartest eine klare und
                eindeutige Loesung, keine Hilfe.

                Ich spüre in deinen Antworten immer
                ein leichtes Gefühl von Hochnäsigkeit
                und

                Das ist nicht so gemeint. Ich kann es nur
                nicht leiden, wenn jemand derart offen
                dagegen ist, eine Doku zu waelzen.

                Gib einem Hungrigen ein Fisch, und
                er hat einen Tag zu essen. Lehre
                einen Hungrigen Angeln, und er hat
                sein Leben lang zu essen.

                AHA! Das heißt gib ihm die Lösung dann
                hat er für immer dieses Problem
                bekämpft.

                Wenn ich ihm die Loesung gebe, habe ich
                ihm einen Fisch gegeben. Das naechste mal
                mit einem aehnlichen Problem wird er
                wieder fragen. Bringe ich ihn dazu, in der
                Doku zu lesen, wie die Technik zu seinem
                Problem generell funktioniert, wird er
                auch das naechste mal sein Problem
                selbstaendig loesen koennen.

                Jemandem eine Loesung vorzusagen
                hilft nicht. Im Gegenteil, das hemmt.

                Ja, aber manchmal braucht er eben nur
                die und keine Erklärung warum und wieso.

                Dann ist er hier falsch.

                Stichpunkt: Bedürfnisse es Kunden am
                Markt (Geschäftsprozesse).

                Wir sind hier nicht am Markt.

                Gruesse,
                 CK

                --
                Wenn der Schüler bereit ist, erscheint der Meister.