Problem mit Login-Skript

Probier die Zeile mal so aus:

PHP:
header ("Location: ".$data2['Ziel']."");

//edit:

Du musst die header Funktion in Zeile 41 löschen!
 
Zuletzt bearbeitet:
Probier die Zeile mal so aus:

PHP:
header ("Location: ".$data2['Ziel']."");


Was das gleiche wäre wie

PHP:
header( "Location: " . $data2['Ziel'] );

Mal davon abgesehen wäre es echt sinnvoll erstmal zu schauen, ob $data2 und dann ob $data2['Ziel'] überhaupt gesetzt sind:

PHP:
if (!isset($data2) || !isset($data2['Ziel') )
{
   echo "Irgendwas ist schief gelaufen, ich weiß nicht wohin ich soll...";
}
else
{
   header( .... );
}
 
Was das gleiche wäre wie

PHP:
header( "Location: " . $data2['Ziel'] );

Mal davon abgesehen wäre es echt sinnvoll erstmal zu schauen, ob $data2 und dann ob $data2['Ziel'] überhaupt gesetzt sind:

PHP:
if (!isset($data2) || !isset($data2['Ziel') )
{
   echo "Irgendwas ist schief gelaufen, ich weiß nicht wohin ich soll...";
}
else
{
   header( .... );
}


Ja du hast Recht!

Allerdings musst du ihm erstmal erklären, wo man das einsetzen soll...
 
Allerdings musst du ihm erstmal erklären, wo man das einsetzen soll...

Klar: An die Stelle, wo momentan header ("Location: $data2['Ziel']"); steht. Also diese Zeile weg löschen und anstatt dessen mal das einfügen:


PHP:
if (!isset($data2) || !isset($data2['Ziel') )
{
   echo "Irgendwas ist schief gelaufen, ich weiß nicht wohin ich soll...";
}
else
{
   header( "Location: " . $data2['Ziel'] );
}

Es geht nichts über eine anständige Fehler-Behandlung :)
 
Nee Leute, das läuft noch nicht !
Ich bekomm wieder ne Fehlermeldung...

Parse error: syntax error, unexpected ')', expecting ']' in /var/www/web319/html/bob/login.php on line 45

Hab's gemacht wie ihrs mir empfohlen habt:

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
</head>

<body>

<?php
// Session starten
session_start ();

// Datenbankverbindung aufbauen
$connectionid = mysql_connect ("localhost", "Benutzer", "passwort");
if (!mysql_select_db ("database", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}

$sql = "SELECT ".
"Id, Nickname, Nachname, Vorname, Ziel ".
"FROM ".
"benutzerdaten ".
"WHERE ".
"(Nickname like '".$_REQUEST["name"]."') AND ".
"(Kennwort = '".md5 ($_REQUEST["pwd"])."')";
$result = mysql_query ($sql);

if (mysql_num_rows ($result) > 0)
{
// Benutzerdaten in ein Array auslesen.
$data = mysql_fetch_array ($result);


// Sessionvariablen erstellen und registrieren
$_SESSION["user_id"] = $data["Id"];
$_SESSION["user_nickname"] = $data["Nickname"];
$_SESSION["user_nachname"] = $data["Nachname"];
$_SESSION["user_vorname"] = $data["Vorname"];

$data2 = mysql_fetch_array(mysql_query("SELECT * FROM `benutzerdaten` WHERE `Id` = ' ".$_SESSION["user_id"]." ' "));


if (!isset($data2) || !isset($data2['Ziel') )
{
   echo "Irgendwas ist schief gelaufen, ich weiß nicht wohin ich soll...";
}
else
{
   header( "Location: " . $data2['Ziel'] );
}  
}
else
{
header ("Location: index.php?fehler=1");
} 

?>

</body>
</html>


Zeile 45 ist folgende:
if (!isset($data2) || !isset($data2['Ziel') )

Habt ihr noch ne Idee ?
 
ja war warscheinlich nen flüchtigkeitsfehler von meinem Vorschreiber:

Ander die Zeile mal in das hier:

PHP:
if (!isset($data2) || !isset($data2['Ziel']) )
 
Änder das mal so ab:

Da fehlt ein "]".

PHP:
if (!isset($data2) || !isset($data2['Ziel']) )
 

Neue Beiträge

Zurück