Problem mit if

Hallo nochmal!

Hab ein Problem. Nämlich möchte ich ein Login-Formular nur dann auf einer Seite erscheinen lassen, wenn der Besucher nicht eingeloggt ist.

Bis jetzt steht dort nur, dass er entweder eingeloggt ist oder nicht, und darunter in jedem Fall das Login-Formular.

PHP:
     <?php 
session_start (); 
if (!isset ($_SESSION["user_id"])) 
{ 
  echo "Sie sind nicht eingeloggt"; 
} 
else
{
echo "Sie sind eingeloggt als ".$_SESSION["user_nickname"];
}
?> 
	<form name="login" method="post" action="mitglieder/login_2.php">
	    <label for="tf1">Username: </label>
	    <br />


        <input name="name" type="text" style="BORDER-RIGHT: 0px inset; BORDER-TOP: 0px inset; BORDER-LEFT: 0px inset; WIDTH: 95%; COLOR: #000000; BORDER-BOTTOM: 1px inset; border-bottom-color:#000000; BACKGROUND-COLOR: #eaecf0; border-left: 1px inset; border-left-color:#000000; border-right: 1px inset; border-right-color:#000000; border-top: 1px inset; border-top-color:#000000; display:marker;" >

	    <br>
	   

  <label for="tf1">Passwort: </label>
  <br />
  
    <input name="pwd" type="text" style="BORDER-RIGHT: 0px inset; BORDER-TOP: 0px inset; BORDER-LEFT: 0px inset; WIDTH: 95%; COLOR: #000000; BORDER-BOTTOM: 1px inset; border-bottom-color:#000000; BACKGROUND-COLOR: #eaecf0; border-left: 1px inset; border-left-color:#000000; border-right: 1px inset; border-right-color:#000000; border-top: 1px inset; border-top-color:#000000; display:marker;" >
  
 <br>
    <input type="image" name="login" value="" src="images/login.bmp">
    

    
	      </p>
	</form>

Es klappt schon alles, nur bekomme ich die if-schleife nicht hin, dass das Formular nur angezeigt wird, wenn er nicht eingeloggt ist, und im anderen Fall einen Logout-Link anzeigt.

thx for your help


greetz,

Fabi

PS: Hab schon versucht, dass Formular einfach in die if-schleife mit einzubauen, hat jedoch nicht geklappt;)
 
Re: Problem mit if-schleife

1.:
http://php-faq.de/q/q-terminologie-if.html

2.:
PHP:
     <?php 
session_start (); 
if (isset ($_SESSION["user_id"])) 
{ 
  echo "Sie sind eingeloggt als ".$_SESSION["user_nickname"];
} 
else
{
  echo "Sie sind nicht eingeloggt"; 
?> 
	<form name="login" method="post" action="mitglieder/login_2.php">
	    <label for="tf1">Username: </label>
	    <br />


        <input name="name" type="text" style="BORDER-RIGHT: 0px inset; BORDER-TOP: 0px inset; BORDER-LEFT: 0px inset; WIDTH: 95%; COLOR: #000000; BORDER-BOTTOM: 1px inset; border-bottom-color:#000000; BACKGROUND-COLOR: #eaecf0; border-left: 1px inset; border-left-color:#000000; border-right: 1px inset; border-right-color:#000000; border-top: 1px inset; border-top-color:#000000; display:marker;" >

	    <br>
	   

  <label for="tf1">Passwort: </label>
  <br />
  
    <input name="pwd" type="text" style="BORDER-RIGHT: 0px inset; BORDER-TOP: 0px inset; BORDER-LEFT: 0px inset; WIDTH: 95%; COLOR: #000000; BORDER-BOTTOM: 1px inset; border-bottom-color:#000000; BACKGROUND-COLOR: #eaecf0; border-left: 1px inset; border-left-color:#000000; border-right: 1px inset; border-right-color:#000000; border-top: 1px inset; border-top-color:#000000; display:marker;" >
  
 <br>
    <input type="image" name="login" value="" src="images/login.bmp">
    

    
	      </p>
	</form>	  
<?php } ?>
 
Re: Problem mit if-schleife

zu 1. danke, hab ich nicht gewusst.

zu 2. Das PRoblem war, dass ich in den Formular " anstatt ' verwendet hab. Ganz klar, dass dann ein Fehler anngezeigt wird.
 
Re: Problem mit if-schleife

Klick mich!
Du mußt das Formular innerhalb der bedingten Anweisungen ausgeben:
PHP:
<?php
session_start ();
if (!isset ($_SESSION["user_id"]))
{
  echo "Sie sind nicht eingeloggt";
?>
Hier das Formular
<?php
}
else
{
echo "Sie sind eingeloggt als ".$_SESSION["user_nickname"];
}
?>
Siehe auch: Handbuch, Grundlagen der Syntax

Gruß hpvw
 
Zurück