Hej Jeg har en bootstrap modal med en masse checkbokse i, som bruges til at vælge personer til og fra en opgave. Det virker fint i forhold til at opdatere min sql database. Men jeg kunne godt tænke mig at 'fluebenet' i valgte checkbokse bliver stående når man på et senere tidspunkt åbner modal'en igen for at tilføje/slette personer. Jeg har øverst i min kode denne linie for at checke om pågældende navn står i mit array over valgte personer. if(in_array(navn1,$delinger)){$checked = "checked";} else {$checked = "";} echo $checked; Det virker helt fint. Længere nede i koden har jeg min modal hvor jeg så prøver at checke værdien af $checked. Det gør jeg på denne måde: <div class="checkbox"> <label><input type="checkbox" <?php if($checked== 'checked'){echo 'checked'; }?> name="formdeling[]" id="formdeling" value="navn1">navn xxxxxxxx</label> </div>
Men jeg kan ikke få det til at virke. Har søgt mange fora igennem, men uden held. Hvad gør jeg forkert?
Når navnet passer skriver den 'checked' i variablen $checked. {$checked = "checked";} Har sat en echo på så jeg kan se på siden hvad der skrives i variablen. Det virker hvergang. 'Checked' når navnet passer og '' når navnet ikke er i array'et.
Du har ikke vist nogen kode der skulle resultere i et flueben når $checked = 'checked', men hvis du tilpasser koden du viste i #4 til <?php echo '$checked' ?> burde den i din modal skrive 'checked' når navnet er i arrayen. Hvis det virker, så ligger problemet vel sagtens i den kode der skal producere fluebenet.
Jeg viser variablen $checked i min modal for at kunne se med egne øjne hvad der står skrevet i den. Den skriver 'checked' når navnet passer. Det må jo blive skrevet i linien <?php echo '$checked' ?> som står i checkbox koden. Her er hele linien for checkboksen.
#10 - at det ikke virker betyder sandsynligvis, at du får et tomt felt, selv hvor navnet er i arrayen, hvor du havde forventet teksten 'checked.' Har du prøvet, som jeg antydede i #9, at ændre koden til ...echo '$checked'... i steded for $checked (altså med anførselstegn)?
Har prøvet både med og uden. Lige nu står der i checkboks linien <?php echo '$checked'; ?> Bare underligt at når jeg viser $checked variablen direkte på siden kan jeg se at der står værdien checked i den når navnet er i arrayet og bliver tom når navnet ikke er der.
Ja, det ser mystisk ud. I begyndelsen af koden giver du $checked en værdi (og kontrolerer med echo at variabelen har værdien) og når du så længere nede i koden echoer variabelen igen er værdien forsvundet. Jeg ender vel med at tilslutte mig #5. Hvad kode har du stående mellem de begyndelseslinjer du viser og så modalen?
Jeg har meget kode i mellem de min sql forespørgsel og min modal. Jeg har prøvet at rykke min forespørgsel så den kommer lige før min modal for ikke miste check værdien eller noget undervejs. Men stadig samme resultat desværre.
Jamen så må jeg desværre nok tilslutte mig claes57's konklusion. Det eneste jeg kan gøre er nok at ønske dig held og lykke med at finde nogen der er klogere end jeg.
Tomika, nu lukker du vel spørgsmålet igen? (Med eget svar.) Eller venter du stadig på friske indlæg på denne tråd?
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.