Avatar billede tlunde Nybegynder
18. marts 2004 - 10:14 Der er 5 kommentarer og
2 løsninger

udtræk fra db - flueben

Hejsa,
Jeg har en form, hvor jeg tilføjer noget til min database via flueben, men hvordan hiver jeg dem ud igen, og de samme flueben er markeret, når jeg har lavet en form til at rette i??

Dette er et uddrag af den måde jeg tilføjer fluebenene til datasen på:

<td><input type="checkbox" name="box[]"value="Action">Action</td>
<td><input type="checkbox" name="box[]" value="Drama">Drama</td>

Hvis det kan bruges til noget

Hilsen
Thomas Lunde
Avatar billede detox Nybegynder
18. marts 2004 - 10:30 #1
Du kunne lave dine checkboxe sådan:

<td><input type="checkbox" name="Action" value="1">Action</td>
<td><input type="checkbox" name="Drama" value="1">Drama</td>
Avatar billede muddi Praktikant
18. marts 2004 - 10:30 #2
De er lidt tricky, men det er nemt nok at forklare.
Hvert flue ben har to indstillinger 1/0, sandt/falsk, ja/nej så når trækker data ud fra databasen kan du for eksempel kontrollere outputtet med empty()-funktionen dk.php.net/empty

Det kunne f.eks se ud som følger

<?
if(empty($row['check']))
    $checked = ' checked="checked"';
?>

<td><input type="checkbox" name="box[]"value="Action"<?=$checked;?>>Action</td>
<td><input type="checkbox" name="box[]" value="Drama"<?=$checked;?>>Drama</td>

Du skal selv tilføje resten af koden!
Avatar billede tlunde Nybegynder
18. marts 2004 - 10:40 #3
Jeg har lige prøvet begge to, men jeg kan ikke rigtigt få de til at virke :(

detox >> Jeg kan ikke rigtig se hvordan at den skulle kunne se om flueben er sandt eller falsk udfra det du har skrevet??

muddi >> Jeg har lige prøvet dit også, men der var et par gejlmeddelelser, så jeg prøve at rette lidt i det, så det så sådan her ud:

<?
if(empty($row['check']))
    $checked = 'checked="checked"';
?>

<td><input type="checkbox" name="box[]" value="Action <? $checked; ?>">Action</td>

Men den tager ikke fluebenet med?
Avatar billede detox Nybegynder
18. marts 2004 - 11:55 #4
fx:

<td><input type="checkbox" name="Action" value="1">Action</td>
-----------------------------
if ($_POST['Action'] == 1) {
Avatar billede detox Nybegynder
18. marts 2004 - 11:59 #5
Nå, jeg har misforstået dit spørgsmål. Jeg tænkte på hvordan du skulle modtage input fra formen.
Avatar billede muddi Praktikant
18. marts 2004 - 20:31 #6
Det du har ændret, har altså været <?=$checked til <? $checked. Hvis du ikke ved det, så betyder <?=$checked;?> det samme som <? print($checked);>

<td><input type="checkbox" name="box[]" value="Action <? print($checked);?>">Action</td>

Da dine checkboxe ikke har unikke navne, men er opstillet som et array, skal du køre igennem min kode hver eneste gang.

Jeg fandt dog en lille fejl i mit bud.

<?
if(empty($row['check']))
    $checked = 'checked="checked"';
?>

Skal være

<?
if(!empty($row['check']))
    $checked = 'checked="checked"';
?>

Hvad var det i øvrigt for fejlmeddelelser du modtog? Jeg får nemlig ikke nogen når jeg kører den lille stump kode jeg har postet til dig. Prøv at give noget mere kode, hvis dette indlæg ikke har besvaret dit spm :o)
Avatar billede tlunde Nybegynder
18. marts 2004 - 22:43 #7
muddi >> Nu har jeg prøvet at smide dette ind i toppen:
if(!empty($row['check']))
    $checked = 'checked="checked"';

og dette ind i selve formen:
<td><input type="checkbox" name="box[]" value="Action <? print($checked);?>">Action</td>

Men den afkrydser stadigvæk ikke nogle kategorier??
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester