Autor | Zpráva | ||
---|---|---|---|
danhill Profil |
#1 · Zasláno: 6. 12. 2015, 13:59:38
Ahoj ...
Nějak jsem se zacyklil, prosím, kde mám chybu, že mi to nechodí: $select = $SQL_QUERRY($con,"SELECT * FROM `final` WHERE `code` LIKE '%".$findNEW."%' order by `date` ;"); while ($row=$SQL_FETCH_ASSOC($select)) { if (isset ($row['code'])){ echo '<td style="min-width:65px">' . $datum .'</td>' ; echo '<td title='. $row["country"] .'>' . $row["region"] .'</td>' ; } else { echo '<td>Nenalezeno</td>'; } } Prostě "nenalezeno" mi to nikdy nenapíše a už nevím co vyzkoušet ... Díky za pomoc. |
||
mimochodec Profil |
danhill:
Co přesně čekáš od tohoto? if (isset ($row['code'])) |
||
danhill Profil |
#3 · Zasláno: 6. 12. 2015, 14:11:34
No nad tímto kodem je input,kde uživatel zadá co hledá.
A od toho isset čekám, že dotaz do db vrátí vyplněný 'code' ,pokud ho v db najde. A pokud ho nenajde, tak se napíše Nenalezeno ... |
||
leorond Profil |
Teď jsem nějak nepochopil proč tam je to
isset , podle mne by tohle mělo vždy něco najít.Tedy pokud budeš mít něco v DB co zkusit nějakou funkci která ověří zda záznam v DB a pokud není tak aby hodil chybu? Něco jako například ( je to jen starší příklad bez zabezpečení na ověření zda je email již v DB NEPOUŽÍVAT ) function emailvdb ($email) { $vysledek=mysql_query("select * from aktuality where email='".$email."'"); return (boolean) mysql_num_rows($vysledek); } takto by vypadala podmínka if(emailvdb($_POST["mail"])) echo "Mail již v DB existuje"; Slouží jen jako příklad jak by se to dalo udělat pro použití je nutné upravit a zabezpečit! |
||
Keeehi Profil |
#5 · Zasláno: 6. 12. 2015, 15:25:50
Jde o to, že podmínka (isset ($row['code']) je vždy pravdivá uvnitř toho while cyklu.
Ty potřebuješ spíš if(mysqli_num_rows($select) > 0) { while ($row ... { ... } } else { echo "Žádný záznam."; } |
||
Časová prodleva: 9 let
|
0