Jeg har en række foreninger og en række aktiviteter. Hver forening kan til/framelde sig aktiviteterne vha. checkboxes. Til hver aktivitet i den enkelte forening er der en kontaktperson.
Tilmeldingen virker fint, men når jeg skal redigere foreningens aktiviteter har jeg problemer - jeg skal jo finde ud af, om jeg skal tilføje, "lade være" eller slette aktiviteten (og tilhørende kontaktperson).
Håber I kan hjælpe!
Databasestruktur: - tabel_aktiviteter: id, navn - tabel_kontaktpersoner: id, navn - tabel_link: id, aktivitet_id, kontaktperson_id, forening_id
Strukturen i min kode:
##mysql_array (her "checker" jeg aktiviteten hvis foreningen er tilmeldt - det virker fint) { echo "<input type='checkbox' name='aktivitet[]' value='".$data[id]."'$checked>".$data[aktivitet]."<br>\n"; }
## løber de checkede aktiviteter igennem foreach ($_POST['aktivitet'] AS $aktivitet) {
// Jeg har her prøvet at hente alle poster fra tabel_link og se, om aktiviteten allerede var tilføjet osv., det virkede dog ikke. Hvordan gøres det?
// ØNSKET LØSNING: // 1. operation { skal slette aktiviteten hvis den er blevet fraklikket } // 2. operation { skal tilføje aktiviteten hvis den er blevet tilklikket } // 3. operation { skal lade den stå, hvis der ikke er blevet fra/tilklikket} }
Nu ved jeg ikke om du har x antal rækker defineret, eller om det kommer løbende. Men du kunne evt bruge aktivitet_id, kontaktperson_id og forening_id som kombineret primær nøgle. Men mangler du ikke et felt som angiver om det er tilføjet eller ej? Eller der er måske ikke nogen i den tabel, hvis ikke der er nogen aktivitet?
Jeg ved ikke helt, om jeg forstår dig korrekt - men jeg gætter! :-) I tabellen tabel_link angiver jeg hvilke aktiviteter den enkelte forening varetager. Samtidig kan der evt. være en kontaktperson angivet.
Jeg skal i koden hvor jeg skal have opdateret tabel_link finde ud af, om aktivititeten eksisterer i tabel_link (under den pågældende forening). Derefter skal checkboxenes aktiviteter så tilføjes, slettes eller ikke røres ved.
Jeg har ogås nogle gange svært ved at forstå mig selv :o) Men jeg forstod ikke helt din tabel struktur.
Kan du prøve lidt mere grundigt at forklare hvad du ønsker der skal ske. Det kan jo være en ny tabelstruktur måske er vejen frem.
Synes godt om
Slettet bruger
20. maj 2006 - 13:34#4
Du skal vænne dig til at bruge array indices 'rigtigt' - de skal quotes, ellers vil PHP i første forsøg håbe på at det er en konstant - og det er utilsigtet:
Eller bare: echo '<input type="checkbox" name="aktivitet[]" value="'.$data['id'].'" $checked />'.$data['aktivitet'].'<br />'."\n";
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.