seite schützen | login mit sessions

checkuser.php
PHP:
<?php 
if (!isset ($_SESSION["user_id"])) 
{ 
  echo"<font color='#FF0000'>Sorry aber du bist nicht eingeloggt!<hr><p></font>";
} 
else
{
?>

intern.php
PHP:
<?php 
include ("pages/cms/checkuser.php"); 
?>
<table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber1" width="445">
  <tr>
    <td width="88">
    <img border="0" src="<?php echo $_SESSION["user_avatar"]; ?>"></td>
    <td width="355"><font size="4"><b><?php echo $_SESSION["user_nickname"]; ?></b></font></td>
  </tr>
  <tr>
    <td width="443" colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td width="88">Vorname</td>
    <td width="355"><?php echo $_SESSION["user_vorname"]; ?></td>
  </tr>
  <tr>
    <td width="88">Nachname</td>
    <td width="355"><?php echo $_SESSION["user_nachname"]; ?></td>
  </tr>
  <tr>
    <td width="88">&nbsp;</td>
    <td width="355">&nbsp;</td>
  </tr>
  <tr>
    <td width="88">Über...</td>
    <td width="355"><?php echo $_SESSION["user_ueber"]; ?></td>
  </tr>
</table>
  <a href="logout.php">Ausloggen</a>
  <?
}
  ?>
 
Aus meiner Sicht muss das funktionieren. Wenn der User eingeloggt ist, wird der else-Zweig ausgeführt, sonst kommt die Textausgabe! Ich seh da keinen Fehler...
 
Eine solche if else Abfrage ist nicht möglich.
Wenn dann so:
PHP:
<?php 
if (!isset ($_SESSION["user_id"])) 
{ 
  die("<font color='#FF0000'>Sorry aber du bist nicht eingeloggt!<hr><p></font>");
} 
?>
 
Und warum ist sie nicht möglich?

Eine Begründung fänd ich nicht schlecht :)

Außerdem ist es doch programmatisch mglich zu schauen, ob eine Variable gesetzte ist.
 
Das ist ganz einfach:


du nimmst die datei "checkuser.php" aus dem Tutorial und unten (in Zeile 5) änderst du einfach
PHP:
else  
{  
  header ("Location: formular.php");  //diese Zeile
}

in

PHP:
else  
{  
  print("Du bist nicht eingeloggt!");  
  print("<a href="url">EINLOGGEN</a>");  //kannst noch einen Link zum Formular setzen
}


MfG K@TooN
 
Zuletzt bearbeitet:
Zurück