Switch /Case anweisung funktioniert nicht richtig

xAm

Grünschnabel
Guten Morgen werte User,

ich bin noch auf dem Gebiet "PHP" noch ein neuliing und ich hab mal was getestet.
Um nicht lange Reden zu sprechen zeig ich euch mal gleich mein Werk aus Chaos. :D
Es ist recht einfach gehalten ^^ also nicht wundern.

PHP:
<?

$self = basename($_SERVER['PHP_SELF']);
include ('connect.inc.php');
if (!$_COOKIE['Seele']){
			echo '<form id="form1" name="pw" method="post" action="test2.php?site=login&user=$user">
  		   <label for="textfield"></label>
  		   <input type="text" name="user" id="textfield" />
  		   <label for="label"></label>
   	 	   <input type="password" name="pass" id="label" />
  		   <label for="Submit"></label>
 		   <input type="submit" name="send" value="Login" id="Submit" />
		   </form>';}

else {
	if(isset($_GET['site'])){	
		switch ($_GET['site']){
		case "login":
			$query = mysql_query("SELECT * FROM suser WHERE username = '" . $_GET['user'] . "' ");
			$res = mysql_fetch_array($query);
			echo $_GET['user'];
			if ($_GET['user'] != $res['username'] || ($_GET['user']) == ""){
			echo "Der User Existiert nicht oder ist falsch geschrieben.";}
			elseif($pass != $spass || $pass == ""){
			echo "Das Passwort wurde falsch geschrieben.";}
			elseif($activ == "0"){
			echo "Sie sind nicht aktiviert worden von einem Admin";}
			else {	$pass == $spass && $user == $suser;
			setcookie("Seele", "$id:$user:$pass", time()+(3600*24*2*4));
			echo "Sie haben sich erfolgreich eingeloggt.";
			echo "<a href='test2.php'>Zurück</a>";
			}
		echo "Tralalalala";
		break;
		
		default: echo "Ein Fehler ist aufgetreten."; break;
		}
	}
		else {$rank == 2 && $bann != 1;
			echo "<table border='0' widht='300px'>";
			echo "<tr>";
			echo " <td>";
			echo "Wilkommen zurück $suser";
			echo " </td>";
			echo " <td>";
			echo "<a href='index.php?site=intern'>Intern</a>";
			echo "<a href='index.php?site=logout'>Logout</a>";
			echo " </td>";
			echo "</tr>";
			echo "</table>";
		}
}
?>

Vllt könnt ihr mir helfen. Ich hoffe es doch. Und nicht so hart sein bin noch ein Neulinng auf dem Gebiet :D
 
Hallo

Was ich hier nicht versteh ist warum verwendest du hier switch und nicht eine ganz normale if Klausel ?

Gruß SimonErich
 
Stimmt schon ... bloss wollte ich den Loginbereich einfach einbinden auf so eine art und weise. Also in die Datei soll dann auch noch ein Regiscript etc. deswegen wiollte ich das erstmal mit einem Login ding machne und dann später mit einer Registritation etc.
Deswegen :)

Oder sollte ich das Lieber mit includes machen? ... also

PHP:
<? if (isset($_GET['site']) && $site !="index") {
         include $site.".php";} 
     else { echo "Willkommen auf der meiner neuen Seite";}
?>
Das zum beispiel? Weil ich möchte das Logingedöhns nicht immer weiterleiten, sondern soll alles auf der "gleichen" seite bleiben. Also index oder so.


_______________________________________

Kann es sein das ich durch die IF klausel am Anfang den Fehler herbei gerufen habe?
 
Zuletzt bearbeitet:
Zurück