Sabine: Eintrag in DB überprüfen

Ich möchte überprufen ob ein Name schon existiert in meiner DB.
Mit folgendem Script komme ich leider nicht weiter.
Ich bekomme immer die Ausgabe n.i.O.
unabhängig davon ob sich die Eingabe in der DB befindet oder nicht.

$sql= "SELECT name FROM user_table WHERE Name='".$name."' LIMIT 1";
$pruefsql = mysql_query($sql);
$pruefmail = @mysql_fetch_array($pruefsql);
$mailsql = $pruefmail['name'];
if ($mailsql) {
  echo "i.O.";
                }
                else  {
                echo "n.i.O.";
                }

  1. hi,

    $sql= "SELECT name FROM user_table WHERE Name='".$name."' LIMIT 1";
    $pruefsql = mysql_query($sql);
    $pruefmail = @mysql_fetch_array($pruefsql);

    was soll das @ hier?
    interessiert es dich denn gar nicht, ob ein fehler auftritt?

    regel: so lange du noch in der entwicklungsphase deines scriptes bist, hat da normalerweise kein einziges @ vor einem befehlsnamen aufzutauchen!

    $mailsql = $pruefmail['name'];
    if ($mailsql) {

    kann nicht funktionieren, wenn dir mysql_fetch_array kein ergebnis geliefert hat.
    überprüfe stattdessen mit mysql_num_rows() die anzahl der zurückgegebenen datensätze ab.

    gruss,
    wahsaga

  2. [pref:t=74886&m=431202]