Autor Zpráva
Začátečník
Profil *
Ahoj, jak můžu kontrolovat jestli se dotaz do mysql úspěšně provedl nebo ne. Existuje nějaký standardní postup? Děkuji pěkně
laijk
Profil
Začátečník
niečo také??

$dotaz = 'príkazy mysql'
$vysledky = mysql_query($dotaz, $spojenie) or die(mysql_error($spojenie));
echo 'hotovo :)';
xxxObiWan
Profil
Ahoj, často se používá tenhle zápis:
$result = mysql_query("cokoliv") or die("něco se pokazilo, popis chyby: ".mysql_error());

nebo taky
$result = mysql_query("cokoliv");
if (mysql_error()) echo "něco se pokazilo, popis chyby: ".mysql_error();

Při INSERT, UPDATE a DELETE můžeš kontrolovat i počet ovlivněných řádků:
$result = mysql_query("INSERT INTO ...");
if (mysql_affected_rows()==0) echo "v DB nebyly provedeny žádný změny!";
Alphard
Profil
Kontrukce s or die() se mi zdá nevhodná. Uživatelům rozhodně není potřeba vypisovat text chyby (právě naopak).

Začátečník
Druhá část [#3] vypadá lépe, využivá se návratových hodnot, ale pořád tam chybí nějaké řízené zpracování chyby (tím myslím testování/provoz). V praxi se poté nepoužívá přímo tento přístup, ale různé databázové vrstvy, které v debug režimu házejí výjimky a v production se chovají nastaveným způsobem.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0