kostenloser Webspace werbefrei: lima-city


Probleme mit Formular

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    mrcap

    mrcap hat kostenlosen Webspace.

    Hallo Zusammen!

    Hab mal wieder ein tag/problem">Problem.
    Ich setze ein Cookie:
    setcookie("test", "test", $cookielife);


    Wenn das Cookie gesetzt ist kann ich auf ein Formular zugreifen:
    if(isset($_COOKIE['test'])){
    echo "<form name='Formeins' action='index.php?ort=test' method='post' enctype='multipart/form-data'>";
    
    ...
    echo "<input type='submit' name='submit' value='Aktualisieren'>";
    echo "</form>";
    }


    Mit GET überprüfe ich was includet werden soll:
    if(isset($_GET['ort'])) {
            switch($_GET['ort']) {
                
                case "test":
                    include "test.php";
                break;
    			   
            }     
        } else include "home.php";

    Wenn ich jetzt den Submit button drücke, dann includet er immer die home.php anstatt test.php. Warum ist das so? Wenn ich die überprüfung des cookies weggebe funktioniert es. $_SERVER['PHP_Self'] funktioniert auch nicht.
    Versteht ihr mein Problem?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. PHP ist sehr genau, was groß und kleinschreibung angeht.
    d.h. es macht einen unterschied ob du $_SERVER['PHP_Self'] oder (wie es richtig ist) $_SERVER['PHP_SELF'] schreibst.

    Das Problem mit dem Cookie kann mehrere Ursachen haben:
    - $cookielife ist nicht oder zu kurz gesetzt, sodass das Cookie schon abläuft bevor die besagte Überprüfung stattfindet
    - du hast eine Ausgabe vor setcookie(..). Dadurch sollte (sofern aktiviert) eine Fehlermeldung ausgegeben werden. Das Script läuft jedoch ganz normal weiter.

    mfg
  4. Autor dieses Themas

    mrcap

    mrcap hat kostenlosen Webspace.

    syberpsace schrieb:
    PHP ist sehr genau, was groß und kleinschreibung angeht.
    d.h. es macht einen unterschied ob du $_SERVER['PHP_Self'] oder (wie es richtig ist) $_SERVER['PHP_SELF'] schreibst.

    Das Problem mit dem Cookie kann mehrere Ursachen haben:
    - $cookielife ist nicht oder zu kurz gesetzt, sodass das Cookie schon abläuft bevor die besagte Überprüfung stattfindet
    - du hast eine Ausgabe vor setcookie(..). Dadurch sollte (sofern aktiviert) eine Fehlermeldung ausgegeben werden. Das Script läuft jedoch ganz normal weiter.

    mfg


    Hi!
    Danke für deine Antwort(en)!
    1) $_SERVER['PHP_SELF'] funktioniert auch nicht
    2) $cookielife ist eine eine Stunde lang (time() + 60*60)
    3) Cookie wird gesetzt.

    Das eigentliche Problem ist aber das er die home.php includet anstatt die test.php.
  5. 'index.php?ort=test'


    Übergib den Parameter ort als hidden-field.

    Zum Cookie Problem... Wie sieht $cookielife aus?

    setcookie("test", "test", time()+3600);


    Die Lebensdauer muss ja ausgehend von der aktuellen Zeit gesetzt werden.

    EDIT:

    Okay, grad gelesen :D

    Beitrag zuletzt geändert: 8.7.2011 23:07:21 von fabo
  6. Autor dieses Themas

    mrcap

    mrcap hat kostenlosen Webspace.

    So!
    Hab den (Anfänger)fehler gefunden!
    Ich include ja eine datei. Dort befindet sich ein neues formular. Ich hab einfach den </form> tag vom ersten formular zu spät geschlossen..


    Beitrag zuletzt geändert: 8.7.2011 23:40:16 von mrcap
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!