Avatar billede kulashaker Nybegynder
18. juni 2005 - 20:35 Der er 8 kommentarer og
1 løsning

delete funktion

Hej,

Følgende er pakket ind i en form der kalder en .php side.

<?php
require('dbconnect.php');
$query = pg_query($dbconnect, "SELECT * FROM DVD ORDER BY title") or die ("SQL Query failed --> " . pg_last_error($dbconnect));
while ($result = pg_fetch_object($query)) {
  print "<tr><td>". $result-> id. "</td>";
  print "<td>". $result-> title. "</td>";
  print "<td>". $result-> director. "</td>";
  print "<td align=center>". '<input type="checkbox" name="cbox">'. "</td></tr>";
}

Har lidt svært ved at se hvordan jeg kan associere hver checkbox med den entry den skrives ud sammen med.. måske er det i virkeligheden her det halter.

Man skal kunne slette en entry i db'en ved at markere tekstboksen og trykke på submit længere nede. Hertil ville det være oplagt at hente 'id' feltet over via formen. Men jeg kan ikke helt få dette til at virke. Burde .php kunne tilgå alle de variabler der er indesluttet af form-tagget eller?

Håber på lidt hjælp her, sidder godt og grundigt fast. Skal siges at jeg er helt grøn i php.

Med venlig hilsen,
cbc
Avatar billede kulashaker Nybegynder
18. juni 2005 - 20:41 #1
Ved ikke om mit spørgsmål er formuleret helt klart, så here goes: Hvordan får jeg id feltet for de entries der bliver markeret via checkboxen smidt over i .php filen?
Avatar billede nielle Nybegynder
18. juni 2005 - 20:57 #2
Først retter du din checkboks-kode til noget i stil med:

<input type="checkbox" name="cbox[]" value="' . $result-> id . '">
Avatar billede nielle Nybegynder
18. juni 2005 - 20:59 #3
Når du submitter din form vil du efterfølgende kunne samle alle værdierne (dvs. dine id’er) af de afkrydsede checkbokse op som et array:

$arrCBox = $_POST['cbox']

Der er derefter kun et spørgsmål om at genemløbe dette array for at finde de id’er som skal slettes.
Avatar billede nielle Nybegynder
18. juni 2005 - 21:12 #4
Kogt ned til det essentielle:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="checkbox" name="cbox[]" value="2"><br>
<input type="checkbox" name="cbox[]" value="5"><br>
<input type="checkbox" name="cbox[]" value="57"><br>
<input type="checkbox" name="cbox[]" value="3"><br>
<input type="submit">
</form>

<?php
$arrCBox = $_POST['cbox'];
foreach ($arrCBox as $id)
{
    echo "Id: " . $id . "<br>";
}
?>
Avatar billede kulashaker Nybegynder
18. juni 2005 - 21:37 #5
Hej Nielle,

Mange tak for hurtig og god forklaring - jeg har nu fået det til at virke! Det var lige den del jeg manglede at forstå..

Smid et svar :-)
Avatar billede nielle Nybegynder
18. juni 2005 - 21:55 #6
Svar :^)
Avatar billede kulashaker Nybegynder
18. juni 2005 - 21:58 #7
Hmm, ved ikke hvorfor - men der bliver ikke vist mulighed for at give dig point..!?
Avatar billede kulashaker Nybegynder
18. juni 2005 - 22:02 #8
Eh - ja ok. Du skrev en kommentar... :)

Hit med et svar, så får du dine point.
Avatar billede nielle Nybegynder
18. juni 2005 - 22:04 #9
...
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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