Willkommen in der Webstatt Zum Webstatt Blog und Stories
Christian am 14.08.06 10:40

Hi, ich will überprüfen ob ein Datensatz zu einem bestimmten Bild vorhanden ist. Das Bild wird eindeutig durch seine URL auf meinem Server identifiziet (denke ich zumindest :)) Hier mein Code:

$sql = mysql_query("SELECT id, beschreibung, p_name, p_filename, p_dir, p_src
FROM p_details
ORDER BY id DESC") OR die(mysql_error());

while($row = mysql_fetch_array($sql)){
if($row['p_src'] == $imgsrc){
echo "<h2>Beschreibung" . $row['p_name'] . "</h2>\n";
echo "<p>" . $row['beschreibung'] . "</p>\n";
echo "<br /><br />Bild gefunden \n<br />";
echo $row['p_src'];
break;
} else {
echo "\n<br /><br />\nBild muss hinzugefügt werden! <br />\n";
$sql2 = mysql_query("INSERT INTO p_details (p_filename, P_dir, p_src)
VALUES ('$filename', '$dir', '$imgsrc')") or die(mysql_error());
echo "<br /><br />\nBild wurde erfolgreich hinzuge&uuml;gt! <br />\n";
}
}


Jetzt das Problem, auch wenn der Datensatz schon vorhanden ist, wird ein neuer hinzugefügt ?!

netcup.de Warum gibt es hier Werbung?
Michael Michael am 14.08.06 10:49

Du fragst ja nicht ab, ob der Datensatz existiert sondern nur ob $row['p_src'] == $imgsrc

Für die Überprüfung ob ein Datensatz existiert bietet sich COUNT an

$sql = mysql_query("SELECT COUNT(*) cnt FROM p_details WHERE p_src='$imgsrc'");
$data = mysql_fetch_assoc($sql);
if($data['cnt']>0) {
// vorhanden
} else {
// nicht vorhanden
}

Das prüft ob es einen Datensatz zu p_src=$imgsrc gibt. Hoffentlich war das die Fragestellung

Christian am 14.08.06 10:53

jau ich denke schon

is mir auch aufgefallen, aber schon lang nix mehr mit mysql gemacht ^^

habs jetzt so selber gemacht, sollte auch gehn´, oder?

$sql = mysql_query("SELECT id, beschreibung, p_name, p_filename, p_dir, p_src
FROM p_details
WHERE p_src = '$imgsrc'") OR die(mysql_error());

if(mysql_num_rows($sql) != 0){
echo "<h2>Beschreibung" . $row['p_name'] . "</h2>\n";
echo "<p>" . $row['beschreibung'] . "</p>\n";
echo "<br /><br />Bild gefunden \n<br />";
echo $row['p_src'];
} else {
$sql2 = mysql_query("INSERT INTO p_details (p_filename, P_dir, p_src)
VALUES ('$filename', '$dir', '$imgsrc')") OR die(mysql_error());
}

Michael Michael am 14.08.06 10:58

Jo geht auch

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt