Paul: form oder Umleitung

Moin,
um per PHP Daten aus einer Datenbank zu lesen, habe ich bis jetzt immer mit einem Formular auf PHP_SELF zugegriffen und dann die SQL Abfrage gemacht.

Aber man könnte doch auch auf eine Seite verlinken in der dann eine Weiterleitung (Zurückleitung) auf die eigentliche Datei erfolgt.

Die Verarbeitung der Abfrage läuft genau gleich, nur dass man kein Formular benötigt. Ist das sinnvoll?

Paul

  1. Was genau willst Du damit eigentlich machen? Reicht Dir das mysql-Interface von PHP nicht, mit dem Du noch während des Seiten-Aufbaus auf die Datenbank zugreifen kannst, ganz ohne Weiterleitung und ohne Formular?

    Gruß, LX

    --
    RFC 1925, Satz 2: Egal, wie fest man schiebt, ganz gleich, wie hoch die Priorität ist, man kann die Lichtgeschwindigkeit nicht erhöhen.
  2. um per PHP-Daten aus einer Datenbank zu lesen, habe ich bis jetzt immer mit einem Formular auf PHP_SELF zugegriffen und dann die SQL-Abfrage gemacht.

    Warum bitte soll ein HTML-Formular oder die Variable PHP_SELF Voraussetzung für den Zugriff auf eine SQL-Datenbank sein? Der Zusammenhang erschließt sich mir nicht.

    1. mir auch nicht ganz. Warum Datenbank?

      wie gesagt, es sollte komplett ohne php sein, somit auch ohne mysql datenbank. Eigentlich nur html mit frames, ich bin mir jedoch nicht sicher, ob ich die ganze navileiste mit den buttons als einzelnen frame anlegen kann, der sich nach klicken der jeweiligen sprache komplett ändert (wäre nur button text, könnte aber auch die komplette buttongrafik sein).
      Es gibt viele Bespiele als framesets im netz, nur eben keine, bei dem sich eine zweite navileiste als frameset selbst austauscht (bei mir soll das durch klicken der flag icons passieren). Um es nochmal leicher darzustellen, es sind im Endeffekt zwei navis in der page enthalten. Navi 1 mit den flag icons als hauptnavi, die die navi 2 austauscht mit den buttons in verschiedenen sprachen die den main content ansteuern. Weiss nicht, ob das jetzt ein bisschen besser verständlich ist. Lässt sich schlecht erklären, bsp hab ich leider keins online.

      1. Frames sind eine hervorragende Lösung für viele Probleme in Webseiten, die man am besten anwendet, indem man darauf verzichtet.

        Gruß, LX

        --
        RFC 1925, Satz 2: Egal, wie fest man schiebt, ganz gleich, wie hoch die Priorität ist, man kann die Lichtgeschwindigkeit nicht erhöhen.
      2. Hallo Steve,

        mir auch nicht ganz. Warum Datenbank?

        weil du dich anscheinend im Thread vertan hast?

        wie gesagt, es sollte komplett ohne php sein, somit auch ohne mysql datenbank. Eigentlich nur html mit frames, ...

        Tatsächlich, du bist aus Versehen im völlig falschen Märchen gelandet. ;-)

        Ciao,
         Martin

        --
        Wenn alle das täten, wass sie mich können,
        käme ich gar nicht mehr zum Sitzen.
        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
  3. h1,

    Aber man könnte doch auch auf eine Seite verlinken in der dann eine Weiterleitung (Zurückleitung) auf die eigentliche Datei erfolgt.

    Location Header (301,302) setze ich nur sehr sparsam ein. Beispielsweise, wenn irgendwo ein Link auf eine meiner Seiten existiert, der mir wichtig ist und diese Seite umständehalber mal umbenannt werden muss oder wegfällt. Ein anderer Grund ist programmiertechnischer Art: Redirection nach einem POST.

    Es muss Dir immer bewusst sein, dass bei einer Umleitung der User-Agent mit ins Boot genommen wird, was u.U. schwer zu kontrollierende Abhängigkeiten schafft. Und wer fährt schon gerne Umleitungen, wenn es eine Abkürzung gibt.

    Hotti

    --
    Da gehts lang! Sicher? Nö ;-)
    1. Und wer fährt schon gerne Umleitungen, wenn es eine Abkürzung gibt.

      Danke

  4. Hello,

    um per PHP Daten aus einer Datenbank zu lesen, habe ich bis jetzt immer mit einem Formular auf PHP_SELF zugegriffen und dann die SQL Abfrage gemacht.

    Die ungeprüfte Verwendung von $_SERVER['PHP_SELF'] eröffnet die Möglichkeit, die Seite zu missbrauchen. Wenn ein Bösewicht einen entsprechenden Link auf die Seite setzt, kann das Original-Formular entführt werden, ohne dass der User das wirklich mitbekommt...

    Verwende deshalb besser S_SERVER['SCRIPT_NAME'].

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Verwende deshalb besser S_SERVER['SCRIPT_NAME'].

      Hm, war mir neu. Danke!