Thomas Schmitt: Parameter über URL übergeen

Hallo,

ich bin einen Passwortschutrz in PHP am programmieren. nach der if abfrage, ob user und passwort stimmt, soll eine seite aufgerufen werden (include). dieser seite will ich aber den usernamen, welcher in das formular am anfang übergeben wurde, übergeben.

das ganze sieht jetzt so aus:

include ("index2.php?name=$user");

wenn ich das ganze aber ausführe, bekomme ich einen fehler "Warning: failes opening 'index2.php?name=admin' for inclusion blablabla"

wie könnte man die parameter sonst übergeben?

Gruß
Thomas

  1. Hallo!

    z.B. per POST... Schau mal auf http://www.php.net

    Gruß

    mdkiller

    1. Hallo!

      z.B. per POST... Schau mal auf http://www.php.net

      Gruß

      mdkiller

      ich bin jetzt mal soweit, dass die variable über die url übergeben wird. Nur kann ich bei der datei, der die variable übergeben wurde, den wert nicht anzeigen :(

      1. Hi!

        Versuchs mal mit $HTTP_GET_VARS

        Damit müsstest du es hinkriegen.

        Gruß

        mdkiller

  2. Hallo,

    sorry, aber ich weiß nicht, wie ich das jetzt einbinden soll :( soweit ich weiß, muss das post ja in ein formular... aber die daten sollen übergeben werden, ohne zuerst auf einen "abschicken" button zuklicken?  Kannst du mir evtl weiterhelfen?!

    Gruß
    Thomas

  3. hi,

    ich bin einen Passwortschutrz in PHP am programmieren. nach der if abfrage, ob user und passwort stimmt, soll eine seite aufgerufen werden (include). dieser seite will ich aber den usernamen, welcher in das formular am anfang übergeben wurde, übergeben.

    ein per include eingebundenes php-script, das auf dem selben server liegt (also nicht über http, sondern über's dateisystem eingebunden wird), hat doch automatisch zugriff auf alle auch im übergreifenden script vorhandenen variablen ...?

    ich verstehe nicht, wo dein problem liegt.

    gruss,
    wahsaga

  4. Hallo,

    include ("index2.php?name=$user");

    Du hast offenbar nicht begriffen, wozu include() da ist.
    http://www.php.net/manual/de/function.include.php

    Wenn Du mit include() ein PHP-Skript (oder einfach ein paar
    Zeilen PHP-Code) einbindest, dann ist es so, wie wenn
    diese Zeilen an dieser Stelle im aufrufenden Skript stehen
    wuerden.
    Alle Variablen, die Du bis dort definiert hast,
    stehen auch im eingebundenen Skript zur Verfuegung.

    ---

    Wenn Du auf die Seite weiterleiten willst, nimm header()
    Siehe http://www.php.net/manual/de/function.header.php

    header("Location: http://www.example.com/index2.php?name=$user");

    Achte darauf, dass
    1. _Nichts_ vor dem <?php steht
      http://www.dclp-faq.de/q/q-fehler-header.html
    2. Die URL vollstaendig ist, also inklusive "http://"

    Dein ganzes "Passwortschutz" Konzept beruht offenbar
    auf der "geheimen URL" der zweiten Seite.
    Das ist natuerlich der schwaechste und primitivste "Schutz",
    den es gibt, und er hat viele Schwachstellen.

    Oft ist ein Schutz mit .htaccess/.htpasswd fuer ein ganzes
    Verzeichnis sinnvoller.
    Auch dort hast Du mit PHP Zugriff auf den Username:
    $_SERVER["REMOTE_USER"]
    Andere Moeglichkeiten gibt es z.B. mit Sessions.
    Dann musst Du in jeder Datei am Anfang pruefen, ob
    der Benutzer berechtigt ist, und ihn sonst erst
    einloggen lassen.

    Wenn Du uns verraetst, _was_ Du mit dem Passwortschutz
    erreichen willst, koennen wir Dir besser helfen.

    Gruesse,

    Thomas