headerproblem

corsanostra

Mitglied
Hallo...

ich habe ein kleines Problem mit einem Login-Script. Lokal funktioniert es ohne Probleme, wenn ich es jedoch im I-Net nutzen will gibt es folgenden Fehler aus:

Warning: Supplied argument is not a valid MySQL result resource in /home/pages/xxx.de/login/login.php on line 21

Warning: Cannot add header information - headers already sent by (output started at /home/pages/xxx.de/login/login.php:21) in /home/pages/xxx.de/login/login.php on line 36

hier der code dazu:


PHP:
<?php 
// Session starten
session_start ();

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

$sql = "SELECT ". 
    "Id, Nickname, Nachname, Vorname ". 
  "FROM ". 
    "login". 
  "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"]; 

  header ("Location: intern.php"); 
} 
else 
{ 
  header ("Location: formular.php?fehler=1"); 
} 
?>

Wo liegt da der Fehler und warum?
 
Salut!

Falls ich mich nicht irre müsstest du noch die connectionid hinzufügen
anstatt
$result = mysql_query ($sql);

$result = mysql_query ($sql, $connectionid);

mfg eve
 
Cannot add header information

Schau mal, ob in deinen Dateien vor <?php und hinter ?> alle Leerzeichen entfernt sind.

zum 2. schau in deine Zeile 21 und ändere die wie folgt ab:

PHP:
if ($result[id] > 0)
 
Zuletzt bearbeitet:
Die Fehlermeldung mti den Headern kommt, weil schon der PHP Error gesendet wurde. Um den musst du dir keine Sorgen machen. Eine connection id muss man nicht unbedingt angeben.
Ich denke, dass du
"login".
in
"login ".
ändern musst. Allerdings verstehe ich nicht, wieso das lokal funktioniert hat.
 
Zuletzt bearbeitet:
Zurück