dibi problem (insert, update, delete)

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Engisan
Člen | 8
+
0
-

Ahoj,

s nette pouzivam dibi asi jako vetsina, ale narazim na problem, ze nefunguji prikazy jako

<?php
dibi::update('articles',$data);
//nebo taky
dibi::insert('articles',$data);
?>

kde promenna data obsahuje vse potrebne z predaneho formulare. Kdyz pouziju <?php dibi::query(„insert into articles“, $data); ?>
tak vse funguje jak ma. V cem muze byt problem? Nedojde k zadne vyjimce, jen to proste nic neprovede…

Diky!

Honza Marek
Člen | 1664
+
0
-

Musíš na tom ještě zavolat execute.

<?php
dibi::update('articles', $data)->execute();
?>
Rampa
Člen | 65
+
0
-

jestli se nepletu, tak to takhle nemůže fungovat.
Když se podíváš do dibi API, tak zjistíš, že query něco dělá a vráti resultset. Kdežto insert a update vráti DibiFluent.
Takže buď vkládat přes query nebo:

<?php
$comm=dibi::insert($table,$data);
$comm->execute();
?>

možná by to šlo i do jednoho řádku, ale to si netroufám odhadnout, jestli by to fungovalo :)

Honza Marek
Člen | 1664
+
0
-

Rampa napsal(a):

možná by to šlo i do jednoho řádku, ale to si netroufám odhadnout, jestli by to fungovalo :)

Tak se zamysli nad tim, jestli může nastat situace, kdy to ve dvou řádcích funguje a v jednom ne.

Honza Marek
Člen | 1664
+
0
-

btw proč to neni na dibi fóru?

Rampa
Člen | 65
+
0
-

Honza Marek napsal(a):
Tak se zamysli nad tim, jestli může nastat situace, kdy to ve dvou řádcích funguje a v jednom ne.

ha, dostal jsi mě. Zamýšlím se nad tím a nějak mě taková situace nenapadá :)
(za přepodkladu, že jsou ošetřeny vyjimky, ale to by řvalo i na jednom řádku)
Nebo taková existuje?

Engisan
Člen | 8
+
0
-

diky, pripadam si jako blb, ze jsem se poradne nepodival :)