mysql datensatz nicht gefunden

DJ-MK

Grünschnabel
Hallo zusammen,
das ist ein mein erster Post... :-)

Aber ich hab da ein Problem, wozu ich irgendwie seit Tagen keine Lösung finde.
(bzw. mir fallen nicht die passenden Wörter ein, womit ich Google füttern könnte).

Also ich hab folgendes Problem,
ich erstelle automatisch mit PHP und GD ein Bild mit Daten aus einer datenbank.

Und zwar ist die Tabelle auf ID basiert, d.h. ich rufe die .php Datei im Broser folgendermaßen auf:

.../script/bild.php?id=4

So, jetzt sucht sich diese "bild.php" ja logischerweise die Zeile in der Datenbank wo "id" == "id" (also 4) ist. Da füllt sie mir mit den restlichen Werten dieser Zeile meine Varibalen.

So weit so gut.

Kommt jetzt aber z.b. jemand her, und ruft
.../script/bild.php?id=12344
auf, (id 12344 existiert nicht), bekomme ich nur die logischen mysql fehlermeldungen:

"Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 5 in /srv/htdocs/aendern/start.php on line 26"

Weil er ja halt keine Zeile findet, wo die ID vorhanden ist.
Jetzt möchte ich halt ne relativ einfache Abfrage da rein bauen, die mir einfach nur den Text ausgibt: "Ungültige ID".

Also das muss doch gehen, und ist bestimmt sau einfach, nur ich bin echt zu blöd zum suchen.

Wäre nett, wenn mir jemand einen (großen) Denkanstoß geben könnte!
Danke schonmal! :-)

Gruß Dominik
 
Ähm ja, hmm...

wenn ich die funktion richtig verstanden hab, dann hilft sie mir aber nicht.
Ich will ja schließlich nicht wissen wiviele Zeilen vorhanden sind, sondern ich möchte ja einen Fehler ausgeben wenn ein Benutzer (welche ich an der ID bearbeite) halt eben nicht vorhanden ist....

Also kein passender Wert gefunden wird.
 
Zuletzt bearbeitet:
was mache ich gegen diesen fehler?

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 4 ....

da er ja immernoch erscheint, weil der fehler ja dadruch produziert wird, das er keine passende zeile findet.

danach kommt ja erst eine if abfrage ob >0...
 
Oder alternativ:
PHP:
if (mysql_num_rows($result > 0))
{
   $ergebnis = mysql_result($result,0,1);
}
else
{
   echo 'Kein Datensatz gefunden.';
}
 
Zurück