Autor | Zpráva | ||
---|---|---|---|
Ondraj Profil * |
#1 · Zasláno: 22. 9. 2007, 21:17:56
Čau, mám v $_POST poli nějaké hodnoty(nevím kolik) a tak si spočítám počet pomocí count() a z výsledku potřebuji nějak zajistit, aby se mi SQL dotaz typu INSERT provedl když bude spočítaná hodnota z pole rovna 1 takto:
INSERT INTO `table` (`sloupec1`, `sloupec2`, `sloupec3`, `sloupec4`) VALUES (1, 2, 3, 4); a když vyšší než 1 tak: INSERT INTO `table` (`sloupec1`, `sloupec2`, `sloupec3`, `sloupec4`) VALUES (1, 2, 3, 4), (5, 6, 7, 8); určitě to půjde pomocí nějakého cyklu nebo se pletu? díky ;) |
||
domixx Profil |
#2 · Zasláno: 22. 9. 2007, 21:41:40 · Upravil/a: domixx
hmm.. asi jo ;-) je to moc obecný...
kde pole $radek[$i][$j] jsou prvky (1,2,3,4)(.....) Netestoval jsem to, je to pro inspiraci ;-) |
||
Joker Profil |
#3 · Zasláno: 22. 9. 2007, 21:43:01
No tak to popsané by šlo udělat tak, že se prostě ty dva napsané příkazy dají do if-else :)
Ale to asi nebude přesně to zadání a nejsem si jistý, jak to zadání vlastně mělo znít. Pokud jsou v $_POST vždycky čtveřice hodnot, které se mají INSERTovat, dalo by se to řešit i přes implode, ale jak přesně, to s tímhle zadáním těžko říct. |
||
Ondraj Profil * |
#4 · Zasláno: 22. 9. 2007, 22:53:26
domixx
nevim, zda jsme se pochopili, zdá se mi to nějak moc složitý... no zkusím to tedy vysvětlit znovu v bodech: 1)uživatel vybere nějaké checkboxy 2)já si zjistím, které +jejich ID 3)načtu si to do pole 4)zjistim počet ID v poli 5)teď přichází hlavní bod a to provedení INSERT sql dotazu, pokud bude počet ID v poli roven 1 sql bude v tomto tvaru (sloupce a hodnoty jsou vymyšlené, pouze pro ukázku): INSERT INTO `tabulka` (`sloupec1`, `sloupec2`, `sloupec3`, `sloupec4`) VALUES (hodnota_sloupce1, blabla, nejake_id, treba_text); a pokud bude počet ID v poli větší jak 1, třeba 3, tak by SQL vypadal takto: INSERT INTO `tabulka` (`sloupec1`, `sloupec2`, `sloupec3`, `sloupec4`) VALUES (hodnota_sloupce1, blabla, nejake_id, treba_text), (hodnota_sloupce1, blabla2, nejake_id2, treba_text2), (hodnota_sloupce1, blabla3, nejake_id3, treba_text3); prostě podle počtu ID v poli přidat další hodnoty (VALUES(hodnota1, hodnota2,...)) snad jsem to vysvětlil lépe.. díky za pomoc |
||
domixx Profil |
#5 · Zasláno: 23. 9. 2007, 00:33:25
nějak jsem se s tím drbal, snad to k něčemu bude...
víc už dělat nebudu...
|
||
Ondraj Profil * |
#6 · Zasláno: 23. 9. 2007, 14:12:14
tak když je vybraný jen jeden checkbox tak to jde ok, ale když jich je více, tak sql dotaz vypadá takhle:
INSERT INTO `table` (`id1`, `id2`, `GID`) VALUES (12, 25, 1382,1380,1381,1379); tzn. do této části: (12, 25, 1382 je to dobře, ale potom se se měla objevit další závorka, která by byla takto: (12, 25, 1380 tak jsem tam udělal asi něco blbě já, ty jsi to zkoušel?, abych věděl jestli je chyba u mě dík moc za ochotu |
||
Ondraj Profil * |
#7 · Zasláno: 23. 9. 2007, 15:01:50
tak se omlouvám, měl jsem tam ještě jednu chybu, ale přesto se mi tam nechce vložit více než jeden záznam:
INSERT INTO `table` (`sloupec1`, `sloupec2`, `sloupec3`) VALUES (12, 3, 1381), i když mám vybraných více checkboxů, vždy se tam vloží ten poslední vybraný a nakonci je čárka, zkusim s tim ještě něco vykoumat, kdyžtak napiš, jestli jsi to zkoušel někde na localu, díkec ;) |
||
domixx Profil |
#8 · Zasláno: 23. 9. 2007, 15:11:12
Funguje to... jen to nebylo dotažený do konce, abys ses nad tím trochu zamyslel ;-)
Tož konec je ještě: for ($i=0;$i<$pocet_id;$i++) { místo echo $query = $query_a." ".$query_b[2]; //pro testování měň od 0 do 2 |
||
Ondraj Profil * |
#9 · Zasláno: 23. 9. 2007, 15:16:27
Předem se omlouvám za více postů za sebou, ale už vim jak na to, ale ještě potřebuji poradit...
když vyberu 2 checkboxy a mam to zapsané takto: $query = $query_a." ".$query_b[0]." ".$query_b[1]; echo $query; tak to funguje, ale já potřebuji, aby se tam $query_b[0], $query_b[1] atd... doplnilo automaticky děkuji předem za pomoc |
||
Ondraj Profil * |
#10 · Zasláno: 23. 9. 2007, 15:17:14
domixx
to je ono, dík moc ;) |
||
domixx Profil |
#11 · Zasláno: 23. 9. 2007, 15:19:22
jj to byl ten poslední cyklus... aspoň žes to pochopil ;-)
|
||
Časová prodleva: 17 let
|
0