SQLSTATE[HY000]: General error mit PHP und PDO

Habe ich ein kleines login-Skript.

function login($sql) {
try {                   
    $fbhost = "localhost";
    $fbname = "foodbank";
    $fbusername = "root";
    $fbpassword = "";
    $DBH = new PDO("mysql:host=$fbhost;dbname=$fbname",$fbusername,$fbpassword);
    $DBH->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $STH = $DBH->query($sql);       
    $STH->setFetchMode(PDO::FETCH_ASSOC);

    session_start();        
    if ($row = $STH->fetch()) {
        $_SESSION['username'] = "$row[username]";
        header("Location:index.php");   
    }
} catch(PDOException $e) {
    echo $e->getMessage();
}
}

BEARBEITET:

index.php

$sql = "SELECT username from users where username = ". $_POST['username'] ." AND password = ". $_POST['password'] ."";
login($sql);

Geändert von oben einzufügen, wählen Sie Abfrage. Nun bekomme ich eine neue Fehlermeldung:
SQLSTATE[42S22]: Column nicht found: 1054 Unknown column 'pvtpyro' in 'where-Klausel'

Was sind die Wert für $data und $sql ?
Ich Hinzugefügt mein code an der Unterseite
Bitte beachten Sie den edit in meiner Antwort. Verwenden Sie nicht die SELECT-Abfrage, die Sie zur Verfügung gestellt, da es nicht sicher vor SQL-injections.
Sollten Sie wirklich Bearbeiten diesem post zu entfernen, die SQL-injection aufm Kontoauszug als stef77 gesagt, wir wollen nicht, dass irgendjemand auf der Suche nach Hilfe zu kopieren, und verwenden Sie es.

InformationsquelleAutor Brandi Evans | 2013-05-21

Schreibe einen Kommentar