Problem Login von mr.happines & mehrere Ordner schützen

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

  • Problem Login von mr.happines & mehrere Ordner schützen

    Hallo,

    ich wollte das Login jetzt auf einer Seite anwenden, die über mehrere Ordner verteilt ist.

    Die sessionhelpers (z.B. www.seite.de) sollten im hauptordner sein.
    Sie werden auch am anfang jeder Seite aus dem Hauptordner per include aufgerufen. (Bsp: www.seite.de/fun/)

    Gleichzeitig wird aus dem hauptordner in die unterordner (Bsp. /fun/index.php) auch ein template per include eingefügt,
    indem die logged_in() funktion ausgeführt werden sollte.

    Leider gibts dabei diesen fehler:
    Fatal error: Call to undefined function: logged_in() in /www/htdocs/seite.de/template.php on line 16

    Das login funktioniert allerdings im Hauptordner perfekt
    den Fehler gibts in den unterordnern.

    Wenn ich allerdings in jeden unterordner die sessionhelpers packe und
    dieses template, dann muss sich der user in jedem ordner neu anmelden, oder?

    Dies befindet sich in dem template.php
    PHP-Code:
    <?php
    // wenn nicht eingeloggt gib Fehlermeldung aus
    if (!logged_in()) {
    //Hier steht dann alles, was passieren soll, wenn nicht eingeloggt
    echo '<form method="post" action="http://www.seite.de/login.php">
            <label>Benutzername:</label><br><input name="username" type="text"><br>
            <label>Passwort: </label><br><input name="userpass" type="password" id="userpass"><br>
            <input name="login" type="submit" id="login" value="Einloggen">
        </form>'
    ;
        }
        else {
        echo 
    'Du bist eingeloggt.<br>';
        echo 
    '<a href="http://www.seite.de/logout.php">Ausloggen</a>&nbsp;&nbsp;';
        } 
    //Ende Else-Zweig
    ?>
    line 16 ist dies: if (!logged_in()) {

    Ich hoffe, dass es irgendeine lösung gibt, so dass ich das login über mehrere ordner nutzen kann. ich hoffe, dass ich mich ertändlich ausgedrückt habe.

    Vielen dank für die Hilfe
    flo

  • #2
    Ich vermute, du includest ein Skript, dass ein anderes Skript included.
    Du musst den Pfad vom sub-include anpassen; z.B. über chdir

    oder indem du eine Variable $basepath='../'; definierst. Befindet sich das Hauptskript im Hauptverzeichnis, muss die Variable natürlich leer sein.
    dann in include1.php: include $basepath. 'include2.php';
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar

    Lädt...
    X