Pages 1
You must login or register to post a reply
- Registered: 2011-01-04
- Posts: 466
Topic: Mysql uzklausos pranesimo tikslinimas
Taigi gavosi taip kad sukurta tvs be tikslios uzklausos klaidos pranesimo.. t.y. jei yra kokia klaida uzklausoje ekrane pasirodys tik pranesimas kad kazkas negerai, bet nera parasyta kur negerai t.y. kokiam faile ir kokioje eiluteje. ka galitetumete pasiulyti sioje situacijoje, kad neuzsizaisti su viso kodo perziurejimu? Gal eina kaip nors gudriai issisukti is sios situacijos?
var_dump(0 == 'tekstas'); // TRUE. ar zinai kodel? :)
- minde
- Administrator
- Offline
- Registered: 2006-06-14
- Posts: 4,003
Re: Mysql uzklausos pranesimo tikslinimas
žiūrint kokios aplinkybės:
pvz.: jeigu visos užklausos yra eina per vieną funkciją/metodą (wrapper'į), tai jame gali pradėti debuginti - pilną klaidos pranešimą kažkur užsisaugot, ar rodyt tik dedikuotiems IP ar dar kaip nors;
- Registered: 2011-01-04
- Posts: 466
Re: Mysql uzklausos pranesimo tikslinimas
Tai va kad neina per viena funkcija, kiekviena uzklausa turi savo mysql error reporta. bet ji nenurodo is kur klaida pareina.
var_dump(0 == 'tekstas'); // TRUE. ar zinai kodel? :)
- minde
- Administrator
- Offline
- Registered: 2006-06-14
- Posts: 4,003
Re: Mysql uzklausos pranesimo tikslinimas
Tai sukurk funkciją/metodą, ir visas atskiras funkcijas nukreipk į naujai sukurtą, tada joje jau galėsi gaudyt.
Parodyk kaip atrodo dabartinė užklausos vykdymo ir klaidos apdorojimo struktūra.
- Registered: 2011-01-04
- Posts: 466
Re: Mysql uzklausos pranesimo tikslinimas
paprastai prie kiekvienos uzklausos or die mysql_error()
var_dump(0 == 'tekstas'); // TRUE. ar zinai kodel? :)
- Registered: 2011-01-04
- Posts: 466
Re: Mysql uzklausos pranesimo tikslinimas
pacyzdziui tycia nurodziau klaudinga info uzklausoje ir gaunu klaida:
Unknown column 's' in 'where clause'
is sios info neina suprasti is kur parejo klaida nei failo pavadinimo nei eilutes numerio..
gal yra koks triukas ijungiant php/mysql konfiguracijoje kad rodytu detaliau visas klaidas?
var_dump(0 == 'tekstas'); // TRUE. ar zinai kodel? :)
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
816
- minde
- Administrator
- Offline
- Registered: 2006-06-14
- Posts: 4,003
Re: Mysql uzklausos pranesimo tikslinimas
Na "die mysql_error()" yra nieko gero... čia kalbant bendrai. Nes neparodomas puslapis ir pan. Taip pat mysql_error vartotojui nereikia matyti.
Vienas iš būdų, kaip jau rašiau yra pasigaminti savo funkcija, į kuri:
a) gali apdoroti mysql užklausas/orm, pvz.:
mysql_query($query) or die(mysql_error());
// keičiam į
my_db_handler($query);
// kur
function my_db_handler($query){
mysql_query($query) or my_logger($query, mysql_error());
}
b) gali tik klaidų apdorojimą perrašyti, būtų yra:
b1) vietoj die(mysql_error()) naudoti die(my_error_handler()); (greitas hackas nepažeidžiant kreivos sistemos architektūros);
b2) atsisakyti die() ir aplamai naidoti php error handlerį: http://php.net/manual/en/function.set-error-handler.php
b3) atsisakyti die() ir naudoti try/catch
Mano rekomendacija tai būtų visas mysql užklausas ir visas klaidas apdoroti per tam reikalui skirtas funkcijas/metodus - per vieną tašką, kuriame tu jau paskui galėsi turėti tau tinkamas konstrukcijas ir kryptis, kur nukreipti tikruosius klaidų panešimųs (system log, log file, db error table ar email);
Kalbant dar bendriau, kalbant apie kitas klaidas yra tokie naudingi dalykai:
1) __FILE__, __LINE__
2) http://php.net/manual/en/function.debug-backtrace.php
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Deprecated: Function create_function() is deprecated in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
811
Warning: count(): Parameter must be an array or an object that implements Countable in
/home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line
814
- Registered: 2015-01-01
- Posts: 1
Re: Mysql uzklausos pranesimo tikslinimas
There is protection against session theft. If the session created with chrome and firefox Online - something really wrong.
Pass your
NS0-155 and
C_HANASUP_1 in first try by using our
pass-4sure dumps
Pages 1
You must login or register to post a reply