Autor | Zpráva | ||
---|---|---|---|
Zerog Profil |
#1 · Zasláno: 17. 8. 2006, 19:59:43
dobry den
nevim jestli to patri zrovna sem ale mam problem s checkboxema. De o to ze generuju tabulku z databazi a pred nekteryma zaznamama mam checkbox. Pod tabulkou je treba "odeslat vybranym" a ja potrebuju zjistit vsechny ty zaskrkle. A nevim jak se to vubec resi. Mozna ze pomoci JavaScriptu ale nevim. Snad to chapete. Pokud tohle tema sem nepatri tak se omlouvam. |
||
Lukáš Chmela Profil * |
#2 · Zasláno: 17. 8. 2006, 20:07:49
Nevím jestli tě dostatečně chápu, ale pokud potřebuješ zjistit jenom to, zda jsou checkboxy zaškrtlé, je nejjednodušší poslat je postem na stránku s daným php scriptem a pomocí php pak zjistit jejich hodnotu.
Stačí vytvořit podmínku if: IF($_POST['jmenocheckboxu']=='on') { pozadovanaakce();} Je-li checkbox zaškrtnut, má hodnotu on. Není-li zaškrtnut, má hodnotu NULL. jmenocheckboxu je logicky jeho jméno, které vepíšeš do tagu input ( name="pozadovanejmeno" ). No a je-li checkbox zaškrtnut, provede php script funkci pozadovanaakce(), či co si místo ní uvedeš v ifu ;-) |
||
Hooonza Profil * |
#3 · Zasláno: 17. 8. 2006, 20:15:57
http://www.tvorba-webu.cz/javascript/checked.php
http://www.javascript.cz/?vlastnosti=checked Snad by se to tam dalo pochopit? :-) |
||
Lukáš Chmela Profil * |
#4 · Zasláno: 17. 8. 2006, 20:22:12
jj, nebo pomocí js ;-).
Ale pokud jsem dobře pochopil, výsledek se stejně bude řešit pomocí php scriptu, takže proč tam ještě rvát js, které si tolik uživatelů vypíná? |
||
Zerog Profil |
#5 · Zasláno: 17. 8. 2006, 20:46:45
diky za odkazy jiste mrknu. Ja to jeste trochu upresnim. Takze generuji tabulku. Cast kodu:
..<input type=\"checkbox\" name=\"vyber_emailu\" value=\"".$zaznam['email']."\">... tento kod se stale opakuje podle poctu zaznamu v DB. v promene $zaznam['email'] je nactena vzdy e-mailova odresa. kdyz to odeslu tak v promene vyber_emailu se ulozi emailova adresa, ale logicky jen ta posledni zaskrla (vybrana). A ja zkratko potrebuju aby to poslalo vsechny vybrane emailove adresy. Vim proc to tak je. Je to tak kvuli tomu ze se ta promena "vyber_emailu" vzdy prepise uz na tu posledni hodnotu kterou to posle. Chtel jsem to vyresit tak ze to generovalo cislo vzdy jiny nazev checkboxu. Ukazka: ..<input type=\"checkbox\" name=\"vyber_emailu2\" value=\"".$zaznam['email']."\">... ..<input type=\"checkbox\" name=\"vyber_emailu3\" value=\"".$zaznam['email']."\">... ..<input type=\"checkbox\" name=\"vyber_emailu4\" value=\"".$zaznam['email']."\">... tak to funguje. Ale jak to mam pak cist??? prece numuzu ricne vytvaret promeny $vyber_emailu2,$vyber_emailu3,$vyber_emailu4,.....$vyber_emailu459.. a kdyz jsem zkousel udelat neco ve smylu $vyber_emailu.$promena_kde_se_generuje_cislo_0-max ($promena_kde_se_generuje_cislo_0-max=proste se tam generuje cislo od 0 az x) tak to nefunguje. Takze by me zajimalo jak se to resi? Treba to je v tech odkazech. Jinak sry za preklepy a hrubky ale mam jeste trosku kocovinu ...tak to pls omluvte :) |
||
Lukáš Chmela Profil * |
#6 · Zasláno: 17. 8. 2006, 21:04:36
Obávám se, že teď už vůbec nerozumím, ale nešlo by to udělat logickým způsobem nějak takhle?:
$actualnumb = "0"; ... function vypis_mailu($actualnumb,$zaznam) { echo "<input type=\"checkbox\" name=\"vyber_emailu".$actualnumb."\" value=\"".$zaznam['email']."\">";} ... vypis_mailu(($actualnumb+1),$zaznam); ... |
||
Zerog Profil |
#7 · Zasláno: 17. 8. 2006, 21:23:00
Jo diky pres funkci jsem to nezkousel neni to sice ono ale privedlo me to na novou cestu. Diky vam, Lukasi :)
|
||
Lukáš Chmela Profil * |
#8 · Zasláno: 17. 8. 2006, 21:26:10
=) Neni zac, rado se stalo ;-)
|
||
IONI Profil * |
#9 · Zasláno: 17. 8. 2006, 21:33:03
zkus to takto:
|
||
Lukáš Chmela Profil * |
#10 · Zasláno: 17. 8. 2006, 21:36:28
IONI: Jj, nebo tak. dobrý příklad ;-)
|
||
IONI Profil * |
#11 · Zasláno: 17. 8. 2006, 21:40:03
v tom cyklu by melo byt asi
++$i; nebo na zacatku nastavit $i=1; |
||
IONI Profil * |
#12 · Zasláno: 17. 8. 2006, 21:46:52
blbost
|
||
Zerog Profil |
#13 · Zasláno: 17. 8. 2006, 21:57:43
cyklem si poradim :) jj taky dobry ..diky juknu na to
|
||
DoubleThink Profil * |
#14 · Zasláno: 18. 8. 2006, 09:31:28
Chtel jsem to vyresit tak ze to generovalo cislo vzdy jiny nazev checkboxu. Ukazka:
... tak to funguje. Ale jak to mam pak cist??? prece numuzu ricne vytvaret promeny Není jednodušší přidělit checkboxům jména jako pole? <input type="checkbox" name="seznam[]" value="hodnota" />V PHP pak dostaneš pole $seznam |
||
finc Profil |
to: DoubleThink
Tu logiku, kterou jsi to pojmul je úplně naopak :) Když se zamyslíš, an co přesně využíváš tyto checkboxy? Vždy se jedná o nějakou oblast. Př uložení jednoduchých práv. $query = "SELECT * FROM uzivatele"; if ($result = DB::query($query)) { while($row = $result->fetch_assoc()) { echo "<input type=\"checkbox\" name=\"uzivatel[". $row["login"] ."]\" value=\"1\" />"; } $result->close(); } // po odeslani formulare foreach ($_POST["uzivatel"] as $key => $val) { if ($val == 1) { $query = "INSERT INTO prava (login) VALUES ('". $key ."')"; DB::query($query); } } |
||
Časová prodleva: 5 dní
|
|||
mORb Profil * |
#16 · Zasláno: 23. 8. 2006, 15:08:30
Ja by som potreboval tiez pomoc.. v databaze mam ulozene e-maily a ich id a id prisluchajuce k danemu uzivatelovi. po prihlaseni sa zobrazia uzivatelove e-maily ale ich id nejdu zasebou.. potom mam :
na konci je jeden checkbox ktoreho zaskrtnutim sa zaskrtnu vsetky chceckboxy patriace k e-mailom.. srcipt: <script type="text/javascript"> lenze ak mi id e-mailov nejdu zasebou neoznacia sa mi vsetky... a potom by som chcel oznacene e-maily vymazat z databazy ale presne neviem ako...pomoze mi niekto prosiiiiim? dikes za kazdu radu! |
||
Zerog Profil |
#17 · Zasláno: 23. 8. 2006, 16:47:58
tak dej aby se emaily vypsali serazene podle id. dela se to v tom sql dotazu ktery mas nad ($msg = mysql_fetch_array($messages)) timhle .
$messages=MySQL_Query("SELECT * FROM tabulka ORDER BY ID"); |
||
mORb Profil * |
#18 · Zasláno: 23. 8. 2006, 17:48:53
no len problem je v tom ze mne sa do tabulky ukladaju maily naraz...ulozi sa napr mail s id 50 pre user1 a id 51 pre user2 a ked dam vypisat maily pre user2 tak tam mail s id 50 chyba..takze to tam je dost rozhadzane... a neviem ake ine id by som k checkboxom priradil aby sript potom vedel pre ktore id mailov ich ma vymazat...
|
||
Zerog Profil |
#19 · Zasláno: 23. 8. 2006, 17:59:58
hmm nejak nechupu jak do do te tabulky zapisujes ze to id nejde za sebou? kazdopadne jestli ti to pomuze tak ja jsem to nakonec udelal tak ze kdyz dam "poslat vsem email" tak proste pres php to tam vyfluse vsechny emaily v databazi a kdyz pomoci tech checkboxu vyberes jen nektery tak to mam udelany tak ze do value to napise vzdy email (name=maily value="$email") a odeslu to ....pak pomoci $QUERY_STRING to vsechno prectu a s tim uz si muzes delat co chces ....
nevim jestli ti to pomuze spis ne .... |
||
mORb Profil * |
#20 · Zasláno: 23. 8. 2006, 18:14:26
no ja mam tu tabulku e-mail spravenu takto... id mail, id user, message a potom pomocou id user mi vypise vsetky spravy ktore su pre neho urcene.. id mail je auto_increment takze tie id spravy pre jednotlivych uzivatelov nakoniec nejdu zasebou... a potom scriptom neviem spravit aby sa mi zaskrtnutim "vsetky" oznacili vsetky spravy aby si ich uzivatel mohol naraz odstranit...
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0