Autor | Zpráva | ||
---|---|---|---|
PetrQ Profil |
#1 · Zasláno: 3. 6. 2010, 22:17:56
Dobrý večer,
prosím o radu. Poprvé používám AJAX - (plugin malsup jquery form) a nejsem schopen udělat kontrolu, zda se data opravdu uložila do db mysql. V php používám $chyba = mysql_error .... a podmínky if pro další vykonání skriptu při vrácení chyby z mysql. Při použití AJAXU bych rád udělal něco podobného, ale netuším, kde a co mám hledat. Skript nyní vypíše kladnou hlášku při vykonání úlohy, ale neřeší, zda byl opravdu zápis v db změněn. Děkuji Petr část kódu if (isset($_POST['psa'])) { $id_pes=$_POST['id_pes']; $jmenopsa=$_POST['jmenopsa']; mysql_query("UPDATE ps SET jmenopsa='$jmenopsa' WHERE id_pes='$id_pes'", $GLOBALS["link"]); $chyba_up3 = mysql_error($GLOBALS["link"]); if ($chyba_up3==='') echo ("<font color='#FF0000'>Údaje uživatele byly změněny a vloženy do DB.</font><br />\n"); else { echo ("<font color='#FF0000'>Problém s úpravou údajů uživatele v DB.</font><br />\n Zkontrolujte, prosím, zda se akce provedla.<br />\n"); } } echo"<script type='text/javascript'> // wait for the DOM to be loaded $(document).ready(function() { // bind 'myForm' and provide a simple callback function $('#modal').ajaxForm(function() { alert('Informace byly změněny!'); }); }); </script>"; |
||
Aichi Profil |
#2 · Zasláno: 4. 6. 2010, 17:59:35
Tyhle AJAXy všechny jen otravují.
Teď vážně. Máš několik možností. Buď budeš z PHP vracet HTTP status kód, kdy 200 bude, že se to uložilo a nějaký 50x, že se neuložilo, nebo budeš vracet nějaký data (např. JSON ve tvaru {status: true/false}. Pak se musíš podívat, zda např. ta metoda ajaxForm do té tvé funkce nedokáže dostat výsledek, nebo ten status kód a dle toho se zařídit. |
||
Kcko Profil |
#3 · Zasláno: 4. 6. 2010, 19:24:05
a ta metoda ajaxForm nema nejaky callback ze bys jim prostrcil data, tj to co ti vrati PHP? jquery funkce na praci s ajaxem to takhle maji bezne.
|
||
PetrQ Profil |
#4 · Zasláno: 4. 6. 2010, 22:18:43
Díky za nasměrování, zkusím se tím prokousat.
Kcko: Odkaz Nějaké callbacky tam jsou, ale podařilo se mi z toho scriptu vydolovat jenom callback o tom, že formulář byl odeslán. Ale nejsem schopen tam nacpat zprávu o selhání uložení do db. Ale asi je to jen moje neschopnost pochopit Ajax :o)) Bohužel dokumentace skriptu je dost stručná. |
||
Kcko Profil |
#5 · Zasláno: 5. 6. 2010, 16:47:45
Ja ta vidim callback metodu SUCCESS a kdyz se podivas sem http://jquery.malsup.com/form/#validation
tak z toho prikladu Te to nenapadne? :) |
||
PetrQ Profil |
#6 · Zasláno: 6. 6. 2010, 21:09:10
Kcko:
Díky :o)) napadlo. Prokousal jsem se callbacky a funguje. Nemůžu ale pořád přijít na to, jak mysql_error použít. Zkoušel jsem něco s JSON, jak psal Aichi, ale neběží .... Ještě další nakopnutí? :o) Díky Petr |
||
Kcko Profil |
#7 · Zasláno: 6. 6. 2010, 22:35:48
Napis mi na ICQ, odladime to behem 5 min, takhle to bude na dyl ..a rad bych videl ukazku
|
||
Časová prodleva: 15 let
|
0