Heim  >  Fragen und Antworten  >  Hauptteil

PDO versucht, auf den Array-Offset eines Werts vom Typ Bool zuzugreifen

Das macht mich also verrückt! Wenn der Benutzername korrekt ist, wird das Passwort problemlos verglichen. Wenn der Benutzername jedoch falsch ist, findet der Vergleich nicht statt und ich erhalte diesen Fehler. Ich möchte den Datenbankwert mit dem vom Benutzer eingegebenen Wert vergleichen.

<?php
$nm = $_POST['nm'];
$pw = $_POST['pw'];

try{
    $pdo = new PDO('mysql:host=localhost;dbname=gold-market_main', 'root', '');
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e) {
    echo "Connection failed: ".$e->getMessage();
    die();
}

if($nm == null){
    die("Feld darf nicht leer sein!");
} elseif(ctype_alpha($nm[0]) or ctype_digit($nm[0])){



$sql = "SELECT k_nutzername, k_passwort FROM kunden WHERE k_nutzername IN('$nm');";
$result = $pdo->query($sql);
$row = $result->fetch(PDO::FETCH_ASSOC);

if("{$row['k_nutzername']}" != $nm) {
    //header("Location: login_wrongUN.html");     
    print("nm wrong");  
} elseif("{$row['k_passwort']}" != $pw) {
    //header("Location: login_wrongPW.html");  
    print("pw wrong"); 
} else {
    header("Location: konto.html");
}   

}else{
    die("Nutzername muss mit einem buchstaben oder einer Zahl beginnen!");
}
    $pdo = null;
?>

P粉512729862P粉512729862230 Tage vor466

Antworte allen(1)Ich werde antworten

  • P粉184747536
  • StornierenAntwort