Pfandfinder
Lieutenant
- Registriert
- Nov. 2020
- Beiträge
- 659
ich habe eine Datenbank, in der sich in der Tabelle "bestand" Datensätze in dieser Art befinden:
eine weitere Tabelle "ergebnisliste" wird vom Script erzeugt. eine schleife geht alle Datensätze in bestand durch und prüft immer, ob bereits in der Tabelle "ergebnisliste" ein Datensatz besteht, wo name1, name2 und name3 wie in bestand vorhanden ist. dann wird da drin die Anzahl um 1 erhöht. Falls nicht, wird ein neuer Datensatz eingetragen in ergebnisliste.
($row ist aus bestand)
Problem ist aber, wenn name1 gefüllt ist im bestand aber name2 und name3 leer, dann trägt er immer einen neuen datensatz ein... egal ob die Felder leer sind oder NULL. wie kann ich das Problem lösen ?
ID, name1, name2, name3
eine weitere Tabelle "ergebnisliste" wird vom Script erzeugt. eine schleife geht alle Datensätze in bestand durch und prüft immer, ob bereits in der Tabelle "ergebnisliste" ein Datensatz besteht, wo name1, name2 und name3 wie in bestand vorhanden ist. dann wird da drin die Anzahl um 1 erhöht. Falls nicht, wird ein neuer Datensatz eingetragen in ergebnisliste.
PHP:
$statement = $pdo->prepare('SELECT * FROM bestand WHERE name1 = ? AND name2 = ? AND name3 = ?');
$statement->execute(array($row['bestand_name1'], $row['bestand_name2'], $row['bestand_name3']));
$ergebnisliste = $statement->fetch();
if(empty($ergebnisliste))
{
// anlegen in Tabelle
}else{
// Anzahl um 1 addieren
}
($row ist aus bestand)
Problem ist aber, wenn name1 gefüllt ist im bestand aber name2 und name3 leer, dann trägt er immer einen neuen datensatz ein... egal ob die Felder leer sind oder NULL. wie kann ich das Problem lösen ?