Olen etsinyt googlella ja vaikka millä mutta ei ole osunut silmään että mitä php:ssä mysql_query() palauttaa jos mitään ei löydy? esim:
$kysely = mysql_query("SELECT tuote FROM varasto WHERE id=50", $yhteys)
Tästä sitten otetaan sen tuotteen nimi jonka id on 50.
$tuote_nimi = mysql_result($kysely, "tuote");
Nyt jos varasto:ssa ei ole yhtään tuotetta jonka id on 50, antaa mysql errorin. Mistä tiedän että taulusta ei löydy mitään?
$kysely = mysql_query("SELECT tuote FROM varasto WHERE id=50", $yhteys)
Tästä sitten otetaan sen tuotteen nimi jonka id on 50.
$tuote_nimi = mysql_result($kysely, "tuote");
Nyt jos varasto:ssa ei ole yhtään tuotetta jonka id on 50, antaa mysql errorin. Mistä tiedän että taulusta ei löydy mitään?
Vastaukset 2
Vanhimmat
Katso mysql_num_rows monta palauttaa, jos nolla, niin et löytänyt mitään.
Siis tähän malliin
if (mysql_num_rows($result) > 0) {
Tähän sitten kaikki missä tulostelet tuotteita jne..
}
else {
Tuotteita ei löytynyt :(
}
mysql_query palauttaa true jos kysely onnistui false jos epäonnistu. Kyselyhän onnistuu vaikka mitään ei löydykkään, joten siitä sitä tietoa et saa.
Vilkases http://fi.php.net/manual/fi/function.mysql-num-rows.php sekä katso samalla muutkin mysql functiot
Näinhän se käykin :)