| | |
| Stránka: 1 z 1
| [ Príspevkov: 14 ] | |
Autor | Správa |
---|
Registrovaný: 25.07.07 Prihlásený: 27.11.14 Príspevky: 217 Témy: 38 Bydlisko: Kálnica city | Napísal Matho: 01.01.2008 19:59 | |
|
Robim vymazavanie v redakcnom systeme.. Mam checkbox policka ktore mam pomenovane cislami od 1 az po tolko kolko je v databaze sprav... Kazde policko obahuje value - id riadka v databaze.
Pri kliku na vymazat sa mi premenne zaskrtnutych policok prenasaju do oblasti php scriptu, kde sa mi vymazavaju riadky v databaze:
cyklus while mi prebehne premenne od nazvu 1 az po tolko kolko som mal checkoxov a pri tych, ktore nie su prazdne vymaze riadkok v databaze ktory sa rovna obsahu tej premenej. Ja by som vsak potreboval vyriesit oblast napisanu cervenym - aby som sa mohol pomocou $_POST opytat na obsahy premenych
Citácia: if (empty($_REQUEST['id']) ){ $hodnota1=$_POST['; $hodnota2=$cislo; $hodnota3=']; $hodnota=$hodnota1.$hodnota2.$hodnota3;;
$cislo=1; while( $cislo <=($_POST['i']) ){ //vymazat natrvalo dany text z databaze $sql_vymaz="DELETE FROM $sql_tabulka WHERE id='$hodnota' "; $vysledok_vymaz= mysql_query($sql_vymaz) or die ( mysql_error() ); echo "$cislo"; ++$cislo; } }
|
|
Registrovaný: 17.10.06 Prihlásený: 08.01.11 Príspevky: 1752 Témy: 17 | Napísal suchy: 01.01.2008 20:32 | |
|
neni jednoduchsie $_POST[$cislo]; ??? inak hento v tom cervenom ti myslim ani fungovat nebude
_________________ A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table. |
|
Registrovaný: 22.11.07 Prihlásený: 26.02.10 Príspevky: 253 Témy: 1 Bydlisko: 127.0.0.1 | Napísal vl4kn0: 01.01.2008 20:41 | |
|
no. musim uznat ze mas dost divnu syntax:) poviem ti ze premennu $_REQUEST by som nepouzival lebo ti nerozozna co sa posiela methodou GET a co POST, a to moze nejaky zlomysleny uzivatel vyuzit.
dalej na to aby sa mi zobrazii tie inputy by som dal.
Kód: $sql = 'SELECT id FROM table_name WHERE 1'; $result = mysql_query($sql); $num = mysql_num_rows($result);
for($i = 1; $i <= $num; $i++) { echo '<input type="checkbox" name="' . $i . '">'; } a potom na mazanie by som dal asi Kód: $sql = 'DELETE FROM table_name WHERE'; for($i = 1; $i <= $num; $i++) { if (!isset($_POST[$i])) { $sql .= ' id = ' . $_POST[$i] . ' AND'; } } $result = mysql_query($sql);
ta bodka pred = v $sql je dolezita pretoze sa ti vlastne do jedneho sql prikazu vzdy pridavaju inputy ktore chces zmazat. nehovorim ze toto riesenie je moc efektivne. a tiez neviem ci to bude fungovat. s tym sql sa treba este pohrat. nemam tu apache aby som to vyskusal. ale ved skus. ale bna takyo princyp by som to robil ja
_________________ PODPIS BOL ZMAZANY Z DOVODU NERESPEKTOVANIA PRAVIDIEL FORA!!!
Je povolených max. 5 riadkov s veľkosťou písma 9 (rozlíšenie 1280x1024px).
Sprava pre vedenie fora: ake nerespektovanie pravidiel. ved som mal v podpise citaciu na 2 riadky omg? lol? no a este jabber ale to neni moja chyba ze tu nemate input aj na jabber... |
|
Registrovaný: 25.07.07 Prihlásený: 27.11.14 Príspevky: 217 Témy: 38 Bydlisko: Kálnica city | Napísal autor témy Matho: 01.01.2008 20:54 | |
|
no ja som vedel ze to v tom cervenom mam blbost ale dufal som ze tak aspon pochopite o co mi slo... no ono sa jedna o administracne rozhranie cize tam by sa uzivatelovi ani nemalo podarit dostat.. ale dik za upozornenie na to request.. poskusam uvidim co vykuzlim:D
edit://
heh jake jednoduche.. to suchy: to som teda nevedel ze mozem to $_POST davat aj premenne ked tam nedam ' uz mi to ide a nemusim tam nic viac prerabat... ja ked som to skusal tak som daval $_POST['$cislo'] co je samoyrejme blbost
|
|
Registrovaný: 29.12.05 Prihlásený: 14.08.18 Príspevky: 539 Témy: 62 Bydlisko: 127.0.0.1 (... | Napísal qacer: 01.01.2008 21:11 | |
|
riesil som nieco podobne, ale ako hromadna uprava poloziek v kosiku
skus pouzit funkciu foreach a to druhu metodu
Kód: foreach (array_expression as $key => $value) statement
_________________ "Kde končí hiphop, začína IQ." |
|
Registrovaný: 21.02.07 Prihlásený: 21.02.10 Príspevky: 3984 Témy: 96 |
jj foreach, to je asi najlepšie (mne to poradil suchy)
funguje (ako napisal qacer):
Kód: foreach($_POST["hodnota"] as $premenna) $prikaz=mysql_query("DELETE FROM tabulka WHERE ID =$premenna");
|
|
Registrovaný: 22.11.07 Prihlásený: 26.02.10 Príspevky: 253 Témy: 1 Bydlisko: 127.0.0.1 | Napísal vl4kn0: 03.01.2008 14:08 | |
|
fcia foreach sa v tomto pripade vyuzit neda a to z par dovodou.
premennej post mozes priradit len jeden index
cize ako pisal tominator
Kód: foreach($_POST['index'] as $hodnota) { }
ti fungovat nebude pretoze premenna $_POST['index'] je prvok pola ale sam o sebe pole nieje cize nemas co prechadzat.
mozes prechadzat jedine premennu $_POST co pole je ale tym by si prechadzal aj ine inputy a buttony a tak.
_________________ PODPIS BOL ZMAZANY Z DOVODU NERESPEKTOVANIA PRAVIDIEL FORA!!!
Je povolených max. 5 riadkov s veľkosťou písma 9 (rozlíšenie 1280x1024px).
Sprava pre vedenie fora: ake nerespektovanie pravidiel. ved som mal v podpise citaciu na 2 riadky omg? lol? no a este jabber ale to neni moja chyba ze tu nemate input aj na jabber... |
|
Registrovaný: 21.02.07 Prihlásený: 21.02.10 Príspevky: 3984 Témy: 96 |
keby však do checkboxov dal Kód: name="hodnota[]"
a potom dal hodnotu do value
tak to fungovať BUDE
|
|
Registrovaný: 22.11.07 Prihlásený: 26.02.10 Príspevky: 253 Témy: 1 Bydlisko: 127.0.0.1 | Napísal vl4kn0: 07.01.2008 17:19 | |
|
Tominator píše: keby však do checkboxov dal Kód: name="hodnota[]"
a potom dal hodnotu do value tak to fungovať BUDE
a to sa s tebou stavim ze to fungovat nebude:) pretoze co ty tu davas to je drist
_________________ PODPIS BOL ZMAZANY Z DOVODU NERESPEKTOVANIA PRAVIDIEL FORA!!!
Je povolených max. 5 riadkov s veľkosťou písma 9 (rozlíšenie 1280x1024px).
Sprava pre vedenie fora: ake nerespektovanie pravidiel. ved som mal v podpise citaciu na 2 riadky omg? lol? no a este jabber ale to neni moja chyba ze tu nemate input aj na jabber... |
|
Registrovaný: 26.07.06 Prihlásený: 20.03.16 Príspevky: 1378 Témy: 90 Bydlisko: Slovakia-Ko... | Napísal kmsa: 07.01.2008 19:17 | |
|
vl4kn0 nerob si z toho nic asi sa zle ucil o poliach
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 11.01.2008 23:41 | |
|
vl4kn0 píše: a to sa s tebou stavim ze to fungovat nebude:) pretoze co ty tu davas to je drist Tak trochu neviem, čo vlastne tvrdíš. Keď dáš prvkom meno name[], tak vznikne pole name, ktoré bude obsahovať hodnoty atribútov value zaškrtnutých checkboxov (takže to fungovať [možno s menšími] bude).
|
|
Registrovaný: 22.11.07 Prihlásený: 26.02.10 Príspevky: 253 Témy: 1 Bydlisko: 127.0.0.1 | Napísal vl4kn0: 12.01.2008 1:08 | |
|
chrono píše: Tak trochu neviem, čo vlastne tvrdíš. Keď dáš prvkom meno name[], tak vznikne pole name, ktoré bude obsahovať hodnoty atribútov value zaškrtnutých checkboxov (takže to fungovať [možno s menšími] bude).
keby si dal ako hovoris name="name[]" tak ti v po odoslani vznikne premenna $_POST['name[]'], to co ty asi myslis by muselo byt $_POST[$name[]] vtedy by to fungovalo ale to nemozes nijako nakonfigurovat aby to davalo takyto vysledok. to ako tvrdis by mozno fungovalo tak este v php 3/4 ked nebola vypnuta moznost register_globals. teraz by to urcite nefungovalo
a dalsia vec. ako by si to pole potom volal? $_POST['name'.[$key]] ?
lebo toto hodi syntax error. a co tak $_POST["name[$key]"] ? dalsi syntax error + ked to dam do foreach vypise ze ma zly argument pretoze $_POST['name'] NIEJE POLE!!!
_________________ PODPIS BOL ZMAZANY Z DOVODU NERESPEKTOVANIA PRAVIDIEL FORA!!!
Je povolených max. 5 riadkov s veľkosťou písma 9 (rozlíšenie 1280x1024px).
Sprava pre vedenie fora: ake nerespektovanie pravidiel. ved som mal v podpise citaciu na 2 riadky omg? lol? no a este jabber ale to neni moja chyba ze tu nemate input aj na jabber... |
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 Bydlisko: Bratislava |
boze moj, co tu vy riesite, Tominator ma pravdu, ak sa da hodnota atributu name pole, tak po odoslani formulara vznikne z tej premennej logicky tiez pole, ktore obsahuje hodnoty zaskrtnutych checkboxov z atributu value.
Ak neviete, ako sa potom volaju jednotlive prvky takejto premennej, tak sa staci pozriet do manualu do casti viacrozmerne polia.
Kód: $_POST['hodnota'][$key]
a nie blbosti typu $_POST['name[]'] a podobne...
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 02.01.08 Prihlásený: 07.10.18 Príspevky: 140 Témy: 15 Bydlisko: Košice |
Tiez nechapem, preco tu davaju rady taki, ktori si to este nikdy neodskusali v praxi...
_________________ NB: MacBook Pro 13,3 (A1707), MacBook Pro 8,1 (A1278), Toshiba Portege M800-107
PC: Zdroj: Corsair HX 520W | CPU: Core i5-8400 + Noctua NH-C12P | MB: Asus Z370-I Gaming | RAM: 2x 8GB DDR4 G.SKILL TridentZ RGB | HDD: A-DATA SU800 128GB | CASE: Fractal Design Define Nano S |
|
| Stránka: 1 z 1
| [ Príspevkov: 14 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| ako docielit takzto efekt? v Grafické programy | 13 | 846 | 18.02.2010 17:47 Vladio | | Ako docieliť nižšiu teplotu HDD? v Pevné disky a radiče | 7 | 537 | 07.12.2010 14:08 KingTommy | | Ako docielit platbu od Google Adsense bez dosiahnutia minimalneho zarobku? v Služby a webstránky | 1 | 246 | 13.02.2021 14:25 Miso122 | | ako odstranit toto v HTML, XHTML, XML, CSS | 3 | 804 | 15.06.2007 13:13 ma®tin | | ako na toto?? v Grafické programy | 3 | 806 | 24.05.2008 22:55 Seth Sparrow | | Ako sa vola toto v Modifikácie, návody a projekty | 15 | 2187 | 29.05.2007 21:53 McRae | | Ako zapojim toto čudo ? v Zvuk | 6 | 587 | 25.06.2010 7:14 Revolution | | pojde toto ako ma??? v PC zostavy | 6 | 689 | 06.12.2009 16:36 Malveon | | Ako na toto \x61s\ ... v PHP, ASP | 4 | 480 | 14.08.2010 17:28 Ďuri | | ako by ste riesily toto v Operačné systémy Microsoft | 6 | 738 | 04.02.2009 20:05 shiro | | ako sa volá toto menu? v JavaScript, VBScript, Ajax | 7 | 585 | 25.11.2009 15:53 don jebot | | Google Drive / Photos - ako toto funguje ???? v Smartfóny a tablety | 0 | 369 | 03.11.2015 18:06 kllr007 | | V com/ako stiahnu toto CD v Ostatné programy | 0 | 575 | 06.10.2007 18:34 mimkork | | Ako vertikalne zarovnan na stred toto? v HTML, XHTML, XML, CSS | 4 | 579 | 21.12.2007 19:46 Matho | | ako upraviť toto, aby to bolo validne v JavaScript, VBScript, Ajax | 1 | 444 | 09.02.2010 13:40 Ďuri | | Ako alebo v čom sa dá spraviť toto ? v Grafické programy | 1 | 662 | 07.12.2010 17:42 emer |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|