Mailinglisten-Archive |
hallo Thomas, Thomas Letzner wrote: > echo " > ... > <body text=\"#FFFFFF\" bgcolor=\"#000000\" link=\"#FF0000\" tip1: html layout von php code trennen (stichwort: templates) oder wenigstens diese vielen vielen gruseligen escape backslashes vermeiden. das kann doch keine sau lesen, geschweige denn von einem editor vernünftig gehighlightet werden. es funktieren auch htmltags in einer php datei und deinen phpcode setzt du nur an den entsprechend notwendigen stellen ein. z.b. <html><head></head><body><?php echo 'content'; ?></body></html> > if(!session_is_registered('username') || $_SESSION['username'] == tip2: session_is_registered und ähnliche funktionen stammen meiner kenntnis nach aus php3 zeiten. seit php4 sollte mit der superglobalen $_SESSION gearbeitet werden. > "") { // header("location:../html/loginfail.html"); tip3: location mag gern absolute URLs > echo "Hi ".$username." !<p>"; tip4: seit einiger zeit werden variablen nicht mehr grundsätzlich als global definiert (stichwort: register_globals = off). daher solltest du auch hier zunächst prüfen, woher du den gewünschten inhalt bekommst. $_POST, $_GET, $_REQUEST, $_SESSION, $_COOKIE in deinem fall wäre also $_SESSION['username'] angebracht. > Alles was dabei herauskommt ist eine schwarze Seite. Warum wird nicht > der von mir gewollte Inhalt angezeigt? tip5: immer erst in den html-quelltext schauen. in manchen situationen wird output erzeugt, der vom browser nicht oder falsch dargestellt wird. tip6: wenn auch der quelltext nicht das erwartete enthält, dann solltest du dich im debuggen deines codes üben. dabei muss man mit strategie und geduld vorgehen. schau dir zeilenweise deinen code an, setze an entscheidenden stellen echo meldungen ein und prüfe so die logik und die inhalte deiner variablen an allen stellen im script ab, bis du die fehlerhafte stelle identifiziert hast. regards, Ringo
php::bar PHP Wiki - Listenarchive