php soll seite neu laden



  • hallo.
    also ich habe nun ein login system mit regestrierung.
    dann habe ich noch ein menü gemacht für mitglieder

    <?php 
    //link mitglied werden (registrieren) 
    //link login 
    //dann überprüfe ich ob er eingellogt ist 
    //wenn ja dann zeige ich sein menü 
    //wenn nicht dann nicht 
    if(!isset($_SESSION['user_id'])) 
    { 
    echo "Sie Sind Ausgelogt\n"; 
    } 
    else 
    { 
    //menu z.B. daten bearbeiten u.s.w 
    }
    

    mein problem ist nun
    wenn ich die seite betrete
    zeigt es mir an das ich
    ausgelogt bin
    dann regestriere ich mich und logge mich
    ein
    aber im menu wird immer noch
    angezeigt das ich
    ausgeloggt bin
    und mein menu wird nicht angezeigt.
    wie kann ich das nun so machen
    das das automatisch überprüft
    ob ich eingellogt binund mein menu anzeigt.
    wenn ich auf neu laden gehe meines browsers
    dann klappt es auch.
    mit:
    header(Location: usermenu.php);
    funktioniert es nicht
    Vielen Dank MFG



  • Verwendest du Frames 😕



  • nein



  • PHP kann, meines Wissens, von sich aus keien Seite neu laden! PHP läuft auf dem Web-Server und generiert für diesen pures HTML. Ein Reload eines Frames und ähnliches ist somit nur via Javascript möglich welches ja auf dem Client läuft! Für die Login/Menügeschichte bleiben somit entweder Frames oder Du rufst nach dem login via Submit die Seite mit neuen Paramtern erneut auf und stellst dann Dein Menü dar ( Zustandsautomaten).

    Gruß Karsten



  • Es gibt 3 Möglichkeiten jemand weiterzuleiten:
    JavaScript, per Meta Tag oder den Header manipulieren

    Das 3. wäre warscheinlich das beste für dich:

    header(Location: http://url.de/index.php); (komplette url..)

    dies würde den User auf die index.php weiterleiten
    anmerkung: vor dem header darf nichts ausgegeben werden

    die anderen beiden möglichkeiten wären:
    <meta http-equiv="refresh" content="sec; URL=neue_url">
    oder java\1:
    window.location.href = "index.php"



  • danke.
    mfg marcus


Anmelden zum Antworten