if Abfrage
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
anfrage
ausgabe
aussehen
city
code
eintrag
existieren
formulieren
gewaltigen unterschied
klammer vergessen
leute
machen
problem
schleife
software
teddy
test
unterschied
url
-
Hallo Leute,
in meiner Datenbank existieren mehrere Einträge, welche alle in die while schleife gespeist werden... Ich will nun überprüfen, ob der eintrag "id" mit dem eintrag "id_clicked" übereinstimmt, wenn ja soll "test" ausgegeben werden, wenn nein soll "test1" ausgegeben werden... Das ganze hab ich wie folgt:
$get_clicks = mysql_query("SELECT * FROM drupal_clicked, drupal_ads WHERE drupal_clicked.uid = $userId"); if(!$get_clicks) { die('Ungültige Anfrage: ' . mysql_error()); } while ($ausgabe = mysql_fetch_object($get_clicks)) { if($ausgabe->uid){ if(($ausgabe->id_clicked) == "11") { echo '<div>'; echo 'test'; echo '</div>'; } else if($ausgabe->id_clicked) != "11") { echo 'test1'; } } else echo 'Kein Eintrag mit deiner uid'; }
Allerdings für den Fall, dass mehrere Einträge mit der uid existieren und nur einer davon mit 11 übereinstimmt wird "test" und "test1" ausgegeben...
Wie kann ich diese Abfrage so formulieren, dass nur entweder test ODER test1 ausgegeben wird? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Einfach statt
else if
das hier schreiben
else
was dann wie folgt aussieht
$get_clicks = mysql_query("SELECT * FROM drupal_clicked, drupal_ads WHERE drupal_clicked.uid = $userId"); if(!$get_clicks) { die('Ungültige Anfrage: ' . mysql_error()); } while ($ausgabe = mysql_fetch_object($get_clicks)) { if($ausgabe->uid){ if(($ausgabe->id_clicked) == "11") { echo '<div>'; echo 'test'; echo '</div>'; } else { echo 'test1'; } } else echo 'Kein Eintrag mit deiner uid'; }
-
du hast einfach eine klammer vergessen auf zu machen, denn es muss so aussehen:
else if(($ausgabe->id_clicked) != "11")
und nicht so :
else if($ausgabe->id_clicked) != "11")
-
Macht bei dem Problem auch keinen Unterschied...
-
wie ich gerade sehe hast du hier auch eine klammer vergessen :
if(($ausgabe->id_clicked) == "11")
es sollte so aussehen :
if(($ausgabe->id_clicked) == "11"))
Und es macht einen gewaltigen Unterschied ob eine klammer da ist oder nicht, da sonnst die if abfrage nicht ordentlich ausgeführt wird! -
Hallo kill-a-teddy,
so sollte es gehe:
$uid_found = false; $clicked_found = false; while ($ausgabe = mysql_fetch_object($get_clicks)) { if($ausgabe->uid) { uid_found = true; if(($ausgabe->id_clicked) == "11") { clicked_found = true; echo '<div>'; echo 'test'; echo '</div>'; } } } if(!$uid_found) { echo 'Kein Eintrag mit deiner uid'; } else if(!$clicked_found) { echo 'test1'; }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage