Gå til innhold

Legge til checkbox


Anbefalte innlegg

Hei

 

Jeg har en tabell hvor jeg har hentet inn data fra en database. I begynnelsen av hver linjen ønsker jeg å sette inn en checkbox, så jeg kan slette valgte rader.

Noen som kan vise meg hvordan jeg får lagt til dette?

 

//Skjema
echo "<form method='POST' action='slettrad.php'>";

// HTML-tabellens formatering - tabellstart
echo "<table border='1' bordercolor='#cccccc' cellspacing='0' cellpadding='3'>";
echo "<tr bgcolor='#cccccc'>
	 <td>Slett</td><td>ID</td><td>First name</td><td>Last name</td><td>Address</td><td>Postcode</td><td>City</td><td>Email</td><td>Password</td></tr>";

// hämtar resultatrader från tabellen
while($row = mysql_fetch_array( $result )) 
 {
 // skriver ut innehållet i raderna till HTML-tabellen
	 echo "<tr><td>";
 echo;					 //her ønsker jeg å få inn checkbox
 echo "</td><td>";
 echo $row['id'];
 echo "</td><td>";
 echo $row['firstname']; 
	 echo "</td><td>";
 echo $row['lastname'];
	 echo "</td><td>"; 
	 echo $row['address'];
	 echo "</td><td>"; 
	 echo $row['postcode'];
 echo "</td><td>";
 echo $row['city'];
 echo "</td><td>";
 echo $row['email'];
 echo "</td><td>";
 echo $row['password'];
	 echo "</td></tr>"; 
 }

// HTML-tabellens formatering - tabellslut
echo "</table>";

echo "<input type='submit' name='submit' value='Delete'>";

//Skjema - slutt
echo "</form>";

Lenke til kommentar
Videoannonse
Annonse

du må legge <form action="" method="post"> ... </form> rundt tabellen.

 

 

så legger du in denne i hver rad.

 

<input type="checkbox" name="slett_{$row['id']}" />

 

og en <input type="submit" name="submit_slett" value="slett" /> til slutt.

 

logikk:

 

if(isset($_POST['submit_slett'])) {

foreach($_POST as $k => $v) {

if(!strcmp($k{0,6}, 'slett_')) {

$id = (int)substr($k, 6);

mysql_query("DELETE FROM tabell WHERE id=$id");

}

}

}

Lenke til kommentar

for eksempel det ja.

 

husk du må loope nøkklene i $_POST arrayet og hente ut id

 

foreach($_POST as $k => $v) {

$array = explode('=', $k);

if(!strcmp($array[0], 'delete')) mysql_query("DELETE FROM tabell WHERE id=$array[1]");

}

 

edit:

det som er litt tricky her er at en checkboks blir enten satt eller ikke satt. derfor må man ha med id'en i variabelnavnet og parse denne for hver variabel som er satt.

Endret av grimjoey
Lenke til kommentar

Hm...

Jeg har antagelig ikke klart å sette kodene riktig sammen (er nok ikke så flink på php, enda...), for raden ble ikke slettet.... :no:

 

//Has form been submitted?
if (isset($POST['submit']))
{
 //Loop through each customer with an enabled checkbox
foreach($_POST as $k => $v) {
$array = explode('=', $k);
if(!strcmp($array[0], 'delete')) 
mysql_query("DELETE FROM nki_kunder WHERE id=$array[1]");
}

$result = mysql_query($query);

//Should have one affected row
if ((mysql_affected_rows() == 0) || mysql_affected_rows() == -1) {
  echo "<p>There was a problem deleting som of the selected items.</p>";
  exit;
  }
}
   echo "<p>The selected items were succesfully deleted.</p>";

Lenke til kommentar

Gjør slik:

<?php

error_reporting('E_ALL');

//Has form been submitted?
if (isset($POST['submit']))
{
//Loop through each customer with an enabled checkbox

echo '<pre>';
print_r($_POST);
echo '</pre>';

foreach($_POST as $k => $v) {
	$array = explode('=', $k);
	if(!strcmp($array[0], 'delete'))
		echo "DELETE FROM nki_kunder WHERE id=$array[1] <br />";
	else
		echo '['.$k.'] = '.$v'<br />';
}

// $result = mysql_query($query); du har ikke satt $query. denne linjen har ikke noe for seg.

//Should have one affected row
if ((mysql_affected_rows() == 0) || mysql_affected_rows() == -1) {
	echo "<p>There was a problem deleting som of the selected items.</p>";
	exit;
}
}

echo "<p>The selected items were succesfully deleted.</p>";

?>

 

så ser du hva som fåregår

Endret av grimjoey
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...