Richtige Daten von Datenbank holen

Ist ein bisschen viel unformatierter Code aber wofür steht diese Zeile:

PHP:
$_GET['id'] = (int)$_GET['id'];

Das Formular wir per POST versendet!
 
Die ID wird doch gar nicht vom Formular geliefert sondern von der Abfrage die vorher ausgeführt wird.

Aber du hast doch $row["ID"] und da ist der Wert dann doch schon enthalten!?
 
Es geht dich um diese Abfrage mit welcher du die kompletten Daten holen willst:

PHP:
$sql = "SELECT
        SessionID,
        Nickname,
        Email,
        Show_Email,
        DATE_FORMAT(Registrierungsdatum, '%d.%m.%Y') as Datum,
        Name,
        Show_Name,
        Land,
        Show_Land,
        Stadt,
        Show_Land,
        ICQ,
        Show_ICQ,
        MSN,
        Show_MSN,
        Facebook,
        Show_Facebook,
        Avatar,
        Letzte_Aktion,
        Letzter_Login,
        YEAR(CURRENT_DATE)-YEAR(Geburtsdatum) AS dasalter
    FROM
        User
    WHERE
        ID = '".mysql_real_escape_string($_GET['id'])."'";

und in dieser Abfrage wird als Bedingung die ID benötigt.

Schreib es mal so:
PHP:
WHERE ID = '".$row['ID']."'";

Diese ID ist in der Variablen $row["ID"] enthalten welche du von der Abfrage zuvor bekommst.

Schau mal selber deinen Code an dann wirst du die Stelle finden!
 
Theoretisch kannst du doch beide Abfragen vereinen, ohne dass du ein Overhead erzeugst: wenn die Anmeldedaten korrekt sind, erhältst du den Datensatz, ansonsten nicht. Jedoch brauchst du nur eine Abfrage.

SQL:
SELECT
        ID,
        SessionID, 
        Nickname, 
        Email, 
        Show_Email, 
        DATE_FORMAT(Registrierungsdatum, '%d.%m.%Y') as Datum, 
        Name, 
        Show_Name, 
        Land, 
        Show_Land, 
        Stadt, 
        Show_Land, 
        ICQ, 
        Show_ICQ, 
        MSN, 
        Show_MSN, 
        Facebook, 
        Show_Facebook, 
        Avatar, 
        Letzte_Aktion, 
        Letzter_Login, 
        YEAR(CURRENT_DATE)-YEAR(Geburtsdatum) AS dasalter 
    FROM 
        User 
    WHERE 
        Passwort = "{mysql_real_escape_string($_POST['Passwort'])}" AND Nickname = "{mysql_real_escape_string($_POST['Nickname'])}"
 
Zurück