PHP Window Refresh

  • Hallo Mailsupport von PC-Special
    Ich habe eine Frage bezüglich PHP und Window-Refresh.
    Ich habe mir eine Login-Seite mit Username und Passwort gebastelt.
    Die Datei: login.php
    In dieser Datei ist ein Formular und eine Abfrage.
    Zunächst wird abgefragt, ob man bereits eingeloggt ist. Falls ja, wird das Username/Passwort-Eingabe-Formular übersprungen.
    Falls nicht wird das Formular angezeigt und Username/Passwort per POST zu dieser Datei (login.php) gesandt.
    Folgender Code steht dazu:
    if... (falls nicht eingeloggt)
    <form name="form1" method="post" action="./login.php">...) und an Ende des Formulars <input type="hidden" name="login" value="go-in">
    <input type="image" src="./gfx/b_login.gif" name="Abschicken" value="Abschicken">
    Hinter dem Formular:
    elseif ($login == "go-in"): (mehrere include-Dateien) endif;
    Nun ist es aber noch der Fall, das man nach dem Login die includete User-Seite noch manuell Aktualisieren muss.
    Beim Aktualisieren per F5 kommt die Fehler-Meldung, das das ohne ein wiederholtes Senden der Daten nicht möglich sei.
    Klickt man allerdings auf einen Link in einem Menü ohne per F5 zu aktualisieren funktioniert es wunderbar. (Kein nochmaliges Senden, aber auch keine Userseite)
    Wie muss ich es anstellen, das es beim Klick auf Login automatisch funktioniert?
    Zudem soll im Login-Menü,
    - das man eingeloggt ist
    - der Link zum User-Center
    angezeigt werden.
    Das funktioniert sonst nur per Aktualisierung.
    Ich hoffe ihr habt eine Antwort darauf.
    Vielen Dank euch allen.
    MfG
    Michaela

  • hallo michaela !!!


    | Ich habe eine Frage bezüglich PHP und Window-Refresh.
    |
    | Ich habe mir eine Login-Seite mit Username und Passwort gebastelt.
    | Die Datei: login.php
    |
    | In dieser Datei ist ein Formular und eine Abfrage.
    | Zunächst wird abgefragt, ob man bereits eingeloggt ist. Falls ja, wird das
    | Username/Passwort-Eingabe-Formular übersprungen.
    | Falls nicht wird das Formular angezeigt und Username/Passwort per POST zu dieser Datei
    | (login.php) gesandt.
    | Folgender Code steht dazu:
    | if... (falls nicht eingeloggt)
    | <form name="form1" method="post" action="./login.php">...) und an Ende des Formulars
    | <input type="hidden" name="login" value="go-in">
    | <input type="image" src="./gfx/b_login.gif" name="Abschicken" value="Abschicken">
    |
    | Hinter dem Formular:
    | elseif ($login == "go-in"): (mehrere include-Dateien) endif;
    |
    | Nun ist es aber noch der Fall, das man nach dem Login die includete User-Seite noch
    | manuell Aktualisieren muss.
    | Beim Aktualisieren per F5 kommt die Fehler-Meldung, das das ohne ein wiederholtes
    | Senden der Daten nicht möglich sei.
    |
    | Klickt man allerdings auf einen Link in einem Menü ohne per F5 zu aktualisieren funktioniert
    | es wunderbar. (Kein nochmaliges Senden, aber auch keine Userseite)
    | Wie muss ich es anstellen, das es beim Klick auf Login automatisch funktioniert?
    | Zudem soll im Login-Menü,
    | - das man eingeloggt ist
    | - der Link zum User-Center
    | angezeigt werden.
    | Das funktioniert sonst nur per Aktualisierung.


    also ich würde nach dem elseif einfach mit etwa header("Location: ../login-bereich/uebersicht.php") umleiten, dann kommt der nutzer auf eine neu seite und beim aktualisieren wird die log-in-seite gar nicht mehr geladen. (das mit header... funktioniert aber nur wenn vorher keine ausgabe war).


    paul !!!

  • Hallo Paul
    Ich habe, wie Du schreibst, die login.php mit der header ("Location:
    ..."); -funktion modifiziert.
    Die nachkommenden includes habe ich auskommentiert.
    Leider funtioniert das nicht.
    Ich bekomme nur einen Parse-Fehler. Es wäre natürlich möglich, das ich was
    falsch gemacht habe.
    Die Zeile, die nicht funktioniert, lautet nun folgendermaßen:
    elseif ($login == "go-in") {header ("Location: ./index.php?site=admin");}
    site ist ein String, welches sich die admin-Datei aus dem inc-Verzeichnis
    holt.
    MfG
    Michaela
    ----- Original Message -----
    From: "Hotline der PC-Special" <hotline@pc-special.de>
    To: <w.michaela@gmx.de>; "PC-Special-Helpline" <hotline@pc-special.de>
    Sent: Wednesday, February 20, 2002 1:59 PM
    Subject: Re: Programmierung: PHP Window Refresh
    > hallo michaela !!!
    >
    > | Ich habe eine Frage bezüglich PHP und Window-Refresh.
    > |
    > | Ich habe mir eine Login-Seite mit Username und Passwort gebastelt.
    > | Die Datei: login.php
    > |
    > | In dieser Datei ist ein Formular und eine Abfrage.
    > | Zunächst wird abgefragt, ob man bereits eingeloggt ist. Falls ja, wird
    das
    > | Username/Passwort-Eingabe-Formular übersprungen.
    > | Falls nicht wird das Formular angezeigt und Username/Passwort per POST
    zu dieser Datei
    > | (login.php) gesandt.
    > | Folgender Code steht dazu:
    > | if... (falls nicht eingeloggt)
    > | <form name="form1" method="post" action="./login.php">...) und an Ende
    des Formulars
    > | <input type="hidden" name="login" value="go-in">
    > | <input type="image" src="./gfx/b_login.gif" name="Abschicken"
    value="Abschicken">
    > |
    > | Hinter dem Formular:
    > | elseif ($login == "go-in"): (mehrere include-Dateien) endif;
    > |
    > | Nun ist es aber noch der Fall, das man nach dem Login die includete
    User-Seite noch
    > | manuell Aktualisieren muss.
    > | Beim Aktualisieren per F5 kommt die Fehler-Meldung, das das ohne ein
    wiederholtes
    > | Senden der Daten nicht möglich sei.
    > |
    > | Klickt man allerdings auf einen Link in einem Menü ohne per F5 zu
    aktualisieren funktioniert
    > | es wunderbar. (Kein nochmaliges Senden, aber auch keine Userseite)
    > | Wie muss ich es anstellen, das es beim Klick auf Login automatisch
    funktioniert?
    > | Zudem soll im Login-Menü,
    > | - das man eingeloggt ist
    > | - der Link zum User-Center
    > | angezeigt werden.
    > | Das funktioniert sonst nur per Aktualisierung.
    >
    > also ich würde nach dem elseif einfach mit etwa header("Location:
    ../login-bereich/uebersicht.php") umleiten, dann kommt der nutzer auf eine
    neu seite und beim aktualisieren wird die log-in-seite gar nicht mehr
    geladen. (das mit header... funktioniert aber nur wenn vorher keine
    ausgabe war).
    >
    > paul !!!
    >

  • hallo michaela !!!


    | Ich habe, wie Du schreibst, die login.php mit der header ("Location:
    | ..."); -funktion modifiziert.
    | Die nachkommenden includes habe ich auskommentiert.
    | Leider funtioniert das nicht.
    | Ich bekomme nur einen Parse-Fehler. Es wäre natürlich möglich, das ich was
    | falsch gemacht habe.
    |
    | Die Zeile, die nicht funktioniert, lautet nun folgendermaßen:
    | elseif ($login == "go-in") {header ("Location: ./index.php?site=admin");}
    |
    | site ist ein String, welches sich die admin-Datei aus dem inc-Verzeichnis
    | holt.


    ähm... also die login.php darf vorher KEINE ausgabe gemacht haben (siehe php-docs), dann geht die ganze sache sowieso gegen den baum :-)
    ich bin mir jetzt nicht sicher ob die angabe des verzeichnisses korrekt ist. probier mal andere angaben aus. ohne führenden punkt etwa oder so, also header ("Location: /index.php?site=admin"); oder header ("Location: index.php?site=admin");.


    paul !!!