[ Príspevkov: 14 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 25.07.07
Prihlásený: 27.11.14
Príspevky: 217
Témy: 38 | 38
Bydlisko: Kálnica city
NapísalOffline : 01.01.2008 19:59 | Ako docielit toto?

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;

}
}


Offline

Čestný člen
Čestný člen
Ako docielit toto?

Registrovaný: 17.10.06
Prihlásený: 08.01.11
Príspevky: 1757
Témy: 17 | 17
NapísalOffline : 01.01.2008 20:32 | Ako docielit toto?

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.
Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 22.11.07
Prihlásený: 26.02.10
Príspevky: 253
Témy: 1 | 1
Bydlisko: 127.0.0.1
NapísalOffline : 01.01.2008 20:41 | Ako docielit toto?

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...
Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 25.07.07
Prihlásený: 27.11.14
Príspevky: 217
Témy: 38 | 38
Bydlisko: Kálnica city
Napísal autor témyOffline : 01.01.2008 20:54 | Ako docielit toto?

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


Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 29.12.05
Prihlásený: 19.10.14
Príspevky: 539
Témy: 62 | 62
Bydlisko: 127.0.0.1 (...
NapísalOffline : 01.01.2008 21:11 | Ako docielit toto?

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."
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.02.07
Prihlásený: 21.02.10
Príspevky: 3991
Témy: 96 | 96
NapísalOffline : 03.01.2008 13:52 | Ako docielit toto?

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");


Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 22.11.07
Prihlásený: 26.02.10
Príspevky: 253
Témy: 1 | 1
Bydlisko: 127.0.0.1
NapísalOffline : 03.01.2008 14:08 | Ako docielit toto?

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...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.02.07
Prihlásený: 21.02.10
Príspevky: 3991
Témy: 96 | 96
NapísalOffline : 04.01.2008 15:01 | Ako docielit toto?

keby však do checkboxov dal
Kód:
name="hodnota[]"

a potom dal hodnotu do value
tak to fungovať BUDE :D


Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 22.11.07
Prihlásený: 26.02.10
Príspevky: 253
Témy: 1 | 1
Bydlisko: 127.0.0.1
NapísalOffline : 07.01.2008 17:19 | Ako docielit toto?

Tominator píše:
keby však do checkboxov dal
Kód:
name="hodnota[]"

a potom dal hodnotu do value
tak to fungovať BUDE :D


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...
Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 26.07.06
Prihlásený: 20.03.16
Príspevky: 1383
Témy: 90 | 90
Bydlisko: Slovakia-Ko...
NapísalOffline : 07.01.2008 19:17 | Ako docielit toto?

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
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1719
Témy: 0 | 0
NapísalOffline : 11.01.2008 23:41 | Ako docielit toto?

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).


Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 22.11.07
Prihlásený: 26.02.10
Príspevky: 253
Témy: 1 | 1
Bydlisko: 127.0.0.1
NapísalOffline : 12.01.2008 1:08 | Ako docielit toto?

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...
Offline

Správca fóra
Správca fóra
Ako docielit toto?

Registrovaný: 27.07.07
Príspevky: 3971
Témy: 51 | 51
Bydlisko: Bratislava
Vek: 32
NapísalOffline : 12.01.2008 8:33 | Ako docielit toto?

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...


_________________
Desktop: CPU: AMD Athlon64 3000+ | MB: Biostar K8T890-A9 | VGA: NVIDIA GeForce 6200 LE 256MB | RAM: 2x 1GB A-DATA DDR 400 MHz Dual Kit | HDD: WD Caviar Blue 320GB | DVD: LG GSA-H10N | Keyboard: Chicony KU-0420 Silver/Black | Mouse: Logitech RX1000 | Zdroj: Corsair CX400 400W | CASE: DELUX DLC-MD370 Black | LCD: 20" Samsung 206BW | Repro: Teac XL-20
Notebook: ACER Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB / Intel HD Graphics | RAM: 4GB DDR3 1066 MHz | HDD: 640GB
Offline

Užívateľ
Užívateľ
Ako docielit toto?

Registrovaný: 02.01.08
Prihlásený: 06.12.17
Príspevky: 140
Témy: 15 | 15
Bydlisko: Košice
NapísalOffline : 12.01.2008 14:59 | Ako docielit toto?

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
 [ Príspevkov: 14 ] 


Ako docielit toto?



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

ako docielit takzto efekt?

v Grafické programy

13

581

18.02.2010 17:47

Vladio

V tomto fóre nie sú ďalšie neprečítané témy.

Ako docieliť nižšiu teplotu HDD?

v Pevné disky a radiče

7

239

07.12.2010 14:08

KingTommy

V tomto fóre nie sú ďalšie neprečítané témy.

ako na toto??

v Grafické programy

3

602

24.05.2008 22:55

Seth Sparrow

V tomto fóre nie sú ďalšie neprečítané témy.

ako odstranit toto

v HTML, XHTML, XML, CSS

3

509

15.06.2007 13:13

ma®tin

V tomto fóre nie sú ďalšie neprečítané témy.

Ako zapojim toto čudo ?

v Zvuk

6

325

25.06.2010 7:14

Revolution

V tomto fóre nie sú ďalšie neprečítané témy.

Ako sa vola toto

v Modifikácie, návody a projekty

15

1810

29.05.2007 21:53

McRae

V tomto fóre nie sú ďalšie neprečítané témy.

Ako na toto \x61s\ ...

v PHP, ASP

4

281

14.08.2010 17:28

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

pojde toto ako ma???

v PC zostavy

6

430

06.12.2009 16:36

Malveon

V tomto fóre nie sú ďalšie neprečítané témy.

ako sa volá toto menu?

v JavaScript, VBScript, Ajax

7

315

25.11.2009 15:53

don jebot

V tomto fóre nie sú ďalšie neprečítané témy.

ako by ste riesily toto

v Operačné systémy Microsoft

6

298

04.02.2009 20:05

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

V com/ako stiahnu toto CD

v Ostatné programy

0

382

06.10.2007 18:34

mimkork

V tomto fóre nie sú ďalšie neprečítané témy.

Ako vertikalne zarovnan na stred toto?

v HTML, XHTML, XML, CSS

4

354

21.12.2007 19:46

Matho

V tomto fóre nie sú ďalšie neprečítané témy.

Google Drive / Photos - ako toto funguje ????

v Smartfóny a tablety

0

110

03.11.2015 18:06

kllr007

V tomto fóre nie sú ďalšie neprečítané témy.

ako upraviť toto, aby to bolo validne

v JavaScript, VBScript, Ajax

1

198

09.02.2010 13:40

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Ako alebo v čom sa dá spraviť toto ?

v Grafické programy

1

408

07.12.2010 17:42

emer

V tomto fóre nie sú ďalšie neprečítané témy.

mate nieco lepsie za 15 000 SK ako je toto ?

v Notebooky a netbooky

3

252

01.03.2009 13:37

Xaltotun



© 2005 - 2017 PCforum, edited by JanoF