Kako napraviti da mi se mysql_error() sprema u bazu

Kako napraviti da mi se mysql_error() sprema u bazu

offline
  • susok  Male
  • Novi MyCity građanin
  • Pridružio: 03 Sep 2009
  • Poruke: 23
  • Gde živiš: BH

Pozdrav,

znal neko kako da napravim da mi se mysql_error sprema u bazu, da neprikazuje se korisnicima i posjetiocima stranice.

Ja sam probo vako al neradi.

u mysql sam napravio tablicu
CREATE TABLE `mysql_greske` (   `id_mysql_greske` int(11) NOT NULL AUTO_INCREMENT,   `mysql_greska` text NOT NULL,   `datum_stvaranja_greske` datetime NOT NULL,   PRIMARY KEY (`id_mysql_greske`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci AUTO_INCREMENT=1;

pa sam napravio funkciju
function mysql_greske($g) {    $d=date('Y-m-d H:i:s');    //Upisuje mxsql grešku u bazu.    mysql_query("INSERT INTO mysql_greske (mysql_greska, datum_stvaranja_greske) VALUES ('$g', '$d')"); }

i upit gdje imam stavljam vako

   $upit=mysql_query("SELECT id_blog_kategorije, me_kategorije, opis_kategorije, kljucne_rijeci_kategorije FROM blog_kategorije WHERE kategorija_u_kategoriji='$id' ORDER BY id_blog_kategorije ASC")or die(mysql_greske('mysql_error()'));

i sad mi u bazu ne spremi gresku vec samo mysql_error()

znali neko kako da ovo napravim.

HVALA!



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

'mysql_error()' ide bez navodnika u pozivu funkcije.

I die ide nakon sto pozoves tu tvoju funkciju jer je argument funkcije die string, a ne poziv druge funkcije.



offline
  • susok  Male
  • Novi MyCity građanin
  • Pridružio: 03 Sep 2009
  • Poruke: 23
  • Gde živiš: BH

de napisi primjer koda nista te nisam skonto

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

mysql_greske(mysql_error());
Probaj recimo ovako. A die stavi na kraju mysql_greske:

function mysql_greske($g) {    $d=date('Y-m-d H:i:s');    //Upisuje mxsql grešku u bazu.    mysql_query("INSERT INTO mysql_greske (mysql_greska, datum_stvaranja_greske) VALUES ('$g', '$d')"); die(); }

offline
  • susok  Male
  • Novi MyCity građanin
  • Pridružio: 03 Sep 2009
  • Poruke: 23
  • Gde živiš: BH

Napisano: 18 Dec 2010 20:15

sad mi ne upisuje nikako

Dopuna: 18 Dec 2010 20:21

Znas li koji drugi nacin na koji bi mogo napraviti da mysql greske samo ja vidim da nevide gosti i korisnici

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Morao bi promenljivu $g da provuces kroz mysql_real_escape_string pre upisa u bazu, jer se cesto desava da greska ima na primer apostrof ili navodnike.

offline
  • Pridružio: 31 Dec 2010
  • Poruke: 2

Napisano: 31 Dec 2010 15:39

Hajde probaj ovako, trebalo bi da radi:

function mysql_greske($g) {    $d=date('Y-m-d H:i:s');    //Upisuje mxsql grešku u bazu.    mysql_query('INSERT INTO mysql_greske (mysql_greska, datum_stvaranja_greske) VALUES ("'.$g.'", "'.$d.'")'); }
Znaci umjesto double-quote-a, single-quote kod mysql upita, double-quote onda koristi za polja gdje idu $g i $d. htmlspecialchars() u dijelu kad upisujes pretvara " u "e; a single-quote ' ostaje kakav jest, ali nemas problema jer je polje u tabeli ograniceno sa double-qoute Very Happy

$upit=mysql_query("SELECT id_blog_kategorije, me_kategorije, opis_kategorije, kljucne_rijeci_kategorije FROM blog_kategorije WHERE kategorija_u_kategoriji='$id' ORDER BY id_blog_kategorije ASC");
if(!$upit) {   mysql_greske(htmlspecialchars(mysql_error()));  die(""); }

Ovo bi trebalo da radi Very Happy
Nadam se da nisam zakomplikovao svojim objasnjenjem Very Happy

Dopuna: 31 Dec 2010 15:41

I da, preporucujem da stavljas ; poslije svakog mysql upita, INSERT *; SELECT *; UPDATE *; nebitno Smile

Ko je trenutno na forumu
 

Ukupno su 1340 korisnika na forumu :: 65 registrovanih, 7 sakrivenih i 1268 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, A.R.Chafee.Jr., Apok, Atomski čoban, babaroga, bladesu, Boris Bosiljčić, botta, Bubimir, cenejac111, DejanSt, Denaya, djboj, Doca, doktor1964, Dorcolac, dragoljub11987, dule10savic, Faki-Valjevo, GandorCC, Georgius, havoc995, HogarStrashni, ikan, ivicasimo, Joco Skljoco, kalens021, Karla, kokodakalo, Krusarac, Krvava Devetka, kunktator, kybonacci, mačković, mercedesamg, Mercury, mile23, milenko crazy north, milimoj, Miloskec, MiroslavD, mrvica78, nebkv, nemkea71, nikoladim, NoOneEver Dreams, oganj123, opt1, panzerwaffe, Parker, Rogonos, Romibrat, ruso, sasa87, Shinobi, Sićko, SR-3m, vathra, virked, VJ, vukovi, wizzardone, Wrangler, YugoSlav, Zimbabwe