Martin: delete or die

hallo,
ich möchte einen eintrag mit einer bestimmten id löschen.
das funktioniert auch aber nun soll man eine fehlermeldung sehen wenn ein eintrag mit der id garnicht existiert.ich hab das so versucht aber leider funktioniert es nicht.könnt ihr mir helfen?

mysql_query("delete from datenbank WHERE id=$id") or die("existiert nicht");

echo(mysql_error());
zeigt nichts an

martin

  1. Moin,

    mysql_query("delete from datenbank WHERE id=$id") or die("existiert nicht");

    mysql_query() schlägt nur fehl, wenn irgendwas kaputt ist: Die Verbindung, deine SQL-Syntax, der Server...

    Wenn du wissen willst, ob deine Anfrage etwas bewirkt hat und nicht nur ob sie korrekt ausgeführt wurde, dann ist mysql_affected_rows() das was du suchst.

    --
    Henryk Plötz
    Grüße von der Ostsee
    1. hallo,
      vielen dank für deine hilfe.
      jetzt funzt es einwandfrei

      martin

  2. ich möchte einen eintrag mit einer bestimmten id löschen.
    das funktioniert auch aber nun soll man eine fehlermeldung sehen wenn ein eintrag mit der id garnicht existiert.ich hab das so versucht aber leider funktioniert es nicht.könnt ihr mir helfen?

    mysql_query("delete from datenbank WHERE id=$id") or die("existiert nicht");

    Dort steht: Lösche alle Datensätze mit der id=x. wenn es also kein Datenstz mit der id=x gibt, wird eben nichts gelöscht.

    Du mußt also vorher die Anazahl der Datenszätze abfragen, bevor Du löschst.

    SELECT COUNT(id) AS anzahl FROM navigation WHERE id=$id;

    if($row[anzahl])
      {
        echo "Kein Datensatz vorhanden.";
      }

    echo(mysql_error());

    Weil kein Fehler produziert wird.

    MfG, André Laugks