30. oktober 2009 - 14:33Der er
5 kommentarer og 1 løsning
Simpel opdater database med checkbox
Hej eksperter,
jeg har noget der nok er et simpelt spørgsmål og det er lidt pinligt, for jeg har gjort det før, men er pludselig kommet i tvivl.
Jeg har en checkbox i et admin felt der siger: Hvis der er hak i checkboxen så skal værdien i databasen stå til "1" og hvis der ikke er hak så skal den stå til "0".
Når jeg skal opdatere min database så bruger jeg denne kode til alle andre former og input felter:
funktionen "setpageconfig" er en funktion jeg har lavet som skal opdatere databasen. Det skal så opdatere rækken "siteactive" med $content, som så enten er "1" (for checked) eller "0" for unchecked.
Kan jeg gå ud fra, at hvis man sætter et hak i checkboxen er værdien "1" og hvis der intet er, så er værdien "0" for så er det jo meget nemt bare at opdatere den.
Håber jeg har forklaret mig korrekt, ellers må i endelig spørger og jeg skal prøve at udspecificere mit spørgsmål.
tak for dit svar, jeg har kun et enkelt problem med den kode du skriver. Når jeg sætter det ind i min opdateringsproces, så prøver den at tilgå en funktionen "checked()" eller "unchecked()"
Hvordan omgår jeg det eller fortæller den, at den værdi som skal sættes til $siteactive skal være lig enten "1" eller "0"???
Synes godt om
Slettet bruger
30. oktober 2009 - 16:28#3
checked og unchecked er bare kommentarer.. Skal læses som: "checked (1)" = din checkbox er checked og du vil gemme værdien "1" "unchecked (0)" = din checkbox er unchecked og du vil gemme værdien "0"
Jeg vil tro, din kode skal se således ud: if(isset($_POST['siteactive'])) { setpageconfig("siteactive","1"); }else{ setpageconfig("siteactive","0"); }
Men du har også nævnt $_POST['sitekeyword'], som du ikke har beskrevet, så derfor ikke ved, hvad gør.
Prøv ovenstående kode - hvis det ikke virker, må du også poste din form.
Den har naturligvis også et SQL kald til databasen så den kan få værdien ud, men da det også virker tænker jeg ikke det bliver nødvendig at forvirre mere end højst nødvendigt.
I min admin-config-fil har jeg så prøvet at indsætte denne kode, i HTML input = checkbox taget:
if (isactive() !== 0) { echo "checked"; }
Problemet her er, at hvis den er sat til "0" i databasen, ja så vil siden også fungere som "ikke-aktiv" og redirecte til en anden side. Det skal den jo ikke, kun blot finde ud af om nummeret er sat til "1" (altså checked") eller "0" (altså unchecked).
Ved godt der er meget kode og to spørgsmål, men det vigtigste er egentlig lige nu hvordan jeg kan få indsat værdien i databasen som er "1" hvis den bliver krydset af og "0" hvis den ikke er krydset af, som en admin skal gøre på config siden.
Jeg er villig til at smide lidt flere point i puljen, da jeg godt ved at jeg har forøget spørgsmålene en smule.
Mvh Public2
Synes godt om
Slettet bruger
04. november 2009 - 09:30#5
Prøv at køre denne. Jeg bruger isset() til at afgøre om boxen er checked.
undskyld den lange svartid. Jeg fik aldrig helt dit script til at virke Kvadratrodenaf1, men ud fra det du skrev fik jeg nogle tanker og fandt et script der præcis gjorde som jeg ønskede.
Men jeg vil nu give dig pointene alligevel, da du fik hjulpet mig særdeles godt på vej og har brugt så meget af din tid.
Tak for både din hjælp og tid
Mvh Emil
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.