![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 21.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam listę poszczegółnych elementów - które mozna zaznaczać o odznaczać checkboxami...
Jak zaznaczam wiele checkbox wpisuje mi je do bazy... A gdy chcę wyswietlić wyniki zaznaczony mam tylko jeden - pierwszy element... Jak można poprawić żeby pokazywało wszystkie wczesniej zaznaczone checkboxy? Wiem że SELECT wywołuje tylko raz - więc w sumie logiczne że pokaże tylko pierwszy element... tylko nie mam pomysłu jak można pokazać resztę? CODE <? $q=mysql_query("SELECT * FROM c WHERE x_id='".$b."'"); $rop=mysql_fetch_array($q); $p=mysql_query("SELECT * FROM z where status='aktywny'"); while ($r=mysql_fetch_array($p)){ ?> <input name="z_id[]" type="checkbox" value="<? echo $r['id'];?>" <? if($r['id']==$rop['z_id']) { ?> checked="checked" <? } ?> /> <? }?> ... Dalsza część skryptu ... <? for ($i=0; $i<count($z_id); $i++) { $sql2.="INSERT INTO c (z_id, x_id) VALUES (".$z_id[$i].",".$_POST['x_id'].")"; $result2=mysql_query($sql2); } ?> Zrzut tabeli c Kod +----+--------------+ | id | z_id | x_id | +----+--------------+ | 51 | 2 | 2 | | 52 | 4 | 2 | | 45 | 2 | 3 | +----+--------------+ Jeszcze wykombinowałam coś takiego: CODE <? $q=mysql_query("SELECT * FROM c WHERE x_id='".$_GET['b']."'"); while($rp=mysql_fetch_array($q)){ if($r['id']==$rp['z_id']) { ?> <input name="z_id[]" type="checkbox" value="<? echo $r['id'];?>" checked="checked" /> <? } else { ?> <input name="z_id[]" type="checkbox" value="<? echo $r['id'];?>" /><? } }?> Ale teraz mam tyle checkboxow przy jednej opcji ile mam wpisow w bazie... Ten post edytował SandraM 5.08.2008, 14:59:08 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Najpierw pobierz sobie te z_id z bazy danych i zapisz w jakiejś tymczasowej tablicy. Później podczas wyświetlania checkbox-ów sprawdzaj, czy dane ID znajduje się w tej tablicy. Jeśli tak, to dodaj checked="checked" do checkbox-a.
To jest taki ogólny schemat działania, który powinien cię nieco naprowadzić. Czy jest dokładnym rozwiązaniem twojego problemu, tego nie wiem. Nie chce mi się rozszyfrowywać do czego służy c, z, z_id, a do czego x_id ;] -------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 21.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
to sa nazwy tabel i kolumn
w c sa powiazania [id] z_id i x_id w z sa dane zetki [tam sa dane przypisane do id] tabela z mniej wiecej tak wyglada: Kod +----+---------------+ | id | nazwa | opis | +----+---------------+ | 1 | dane | dane | +----+---------------+ tabela x też wygląda tak samo: Kod +----+---------------+ | id | nazwa | opis | +----+---------------+ | 1 | dane | dane | +----+---------------+ A tabela c łączy tabele x i z po id [x_id, z_id] Ten post edytował SandraM 6.08.2008, 08:40:30 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 17.06.2025 - 12:33 |