Autor | Zpráva | ||
---|---|---|---|
Gix Profil * |
#1 · Zasláno: 22. 9. 2012, 11:23:52
Zdravím, pokouším se o napsání jednoduchého scriptu na kontrolu jestli se zaznam v konkrétním poli v db nachází nebo ne, ale pořád né a né přijít na správnou podmínku
$kontrola_vykresu = MySQL_Fetch_Array(MySQL_Query("SELECT * FROM vykresy WHERE cislo_vykresu = ".$_POST["cislo_vykresu"]."")); // jestli $kontrola_vykresu["cislo_vykresu"] neco obsahuje nahlasim chybu if($kontrola_vykresu["cislo_vykresu"] == ""){ echo "Výkres číslo \" ".$_POST["cislo_vykresu"]." \" se již v databázi nachází!<br> ID:".$kontrola_vykresu["id"].""; echo "<br>?chyba=duplicitni_vykres&jmeno_duplicitniho_vykresu=".$_POST["cislo_vykresu"]."&"; exit; }else { echo "neexistuje, takze jej vlozim"; exit; } Pořád mi to hlásí, že záznam existuje ať už jo nebo ne.. zkoušel jsem i if(empty($kontrola_vykresu["cislo_vykresu"])){ if(isset($kontrola_vykresu["cislo_vykresu"])){ ale stále nic.. kde dělám chybu při ověření? Díky za rady |
||
Alphard Profil |
#2 · Zasláno: 22. 9. 2012, 11:59:18
Stačí zjistit počet řádků, mysql_num_rows() v php nebo nebo count() přímo v mysql. Pokud se vrátí 0, záznam neexistuje, když 1, existuje.
Vaši podmínce moc nerozumím, když se nic nenajde, sloupec neexistuje, když se něco najde, nemůže obsahovat prázdný řetězec. |
||
SIFLER Profil |
#3 · Zasláno: 22. 9. 2012, 15:08:44
Zkuste:
$kontrola_vykresu = mysql_num_rows(mysql_query("SELECT * FROM vykresy WHERE cislo_vykresu = ".$_POST["cislo_vykresu"]."")); if($kontrola_vykresu == 0){ echo 'Výkres prostě není'; }else{ echo 'neexistuje, takze jej vlozim'; } Hlavně nezapomeňte ošetřit $_POST['cislo_vykresu'].. |
||
Gix Profil * |
#4 · Zasláno: 22. 9. 2012, 20:22:09
Díky moc:)
|
||
Časová prodleva: 12 let
|
0