Abfrage wenn Ergebnis da ist oder nicht da ist

fredolin

Erfahrenes Mitglied
Hallo PHP-Gemeinde,

ich habe ein kleines Problem oder ich sehe die Lösung nicht..:-(

ich habe ein kleines Such-Script geschrieben, um in einer DB nach Artikel-Nr zu suchen.
Die Suche klappt soweit auch, aber nun möchte ich, das wenn die Artikel-Nr nicht vorhanden ist dann auch eine Fehlermeldung angezaigt wird.

Hier mal mein Ansatz:
PHP:
$dbhanle = opendb()   // Datenbankzugriff
$search = $_POST['Variable'];
$resukt = mysql_query("SELECT * FROM " . DB . " WHERE `artnr`LIKE '%$search%' ");

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                $oridatum = date("d.m.Y", $row['artdate']);

     if($row['artnr'] > 0 ) {    // <---- Hier habe ich das Problem oder ich sehe den Wald vor lauter Bäumen nicht...
               echo ' '; // Dazwischen befindet sich nun alles um den gesuchten Artikel an zeigen zu lassen
     } else {
               echo ' Datensatz nicht vorhanden ';
     }
}
Ich freue mich sehr über Eure Hilfe oder Denkanstöße..

VG Fredolin
 
Hi

in der Schleife ist der falsche Ort für die Prüfung.

1) Vor der Schleife eine Variable machen, die auf false gesetzt wird
2) In der Schleife auf true setzen, also true wenn min. einmal durchgelaufen
3) Nach der Schleife: Wenn die Variable noch immer false ist, gab es kein Ergebnis.

Btw., die Veröffentlichung von PHP7 ist für nächsten Monat geplant,
und die mysql_irgendwas - Funktionen sind per default nicht mehr dabei.
Jetzt umstellen auf Mysqli.
 
Hallo fredolin,

in Deinem Fall ist es besser, nach dem SQL-Query mit der Funktion mysql_num_rows zunächst die Anzahl der Reihen zu analysieren, die der Query zurück gibt.
Ist das Ergebnis >= 1 - lässt Du die Schleife laufen und erhälst am Ende das Ergebnis.
Ist das Ergebnis = 0 - kannst Du mit einer einfachen if-Bedingung einen Fehler ausgeben.

LG
 
Hallo Alle,

ich bedanke mich sehr bei allen die mir hier Denkanstöße gegeben haben. Doch ich habe die Lösung schon gefunden.. Dennoch super danke schön ..

LG Fredolin
 
Wenn du die Lösung gefunden hast, wäre gut wenn du sie hie posten könntest, dann wäre für Leute die ähnliche Probleme haben hier bereits eine Lösungsansatz
 

Neue Beiträge

Zurück