Hallo,

ik heb de titels van artikels in een my sql tabel staan. Die haal ik op en laat ik zien. Ook heb ik er checkboxen voor gemaakt en een delete knop. Nu is de bedoeling, zodra ik een box afvink en klik op verwijder dat de betreffende variabele wordt verwijderd. Maar hoe doe ik dat?

Alvast bedankt, hieronder de code

<?php
	include('connectdb.php');
?>
<html>
	<head>
	</head>
	<body>
		<div>
			<p class="titel">Overzicht</p>	
			<form action="" method="post">
				<?php

					if (!($result = @ mysql_query ("SELECT * FROM content", $connection)))
					die("Error " . mysql_errno() . " : " . mysql_error());
				
					while ($row = @ mysql_fetch_array($result, MYSQL_NUM))
					{
					
					 $ID = $row[0];
					 $title =  $row[1];
						echo "<input type='checkbox' name='.$ID.'><a href='editpage.php?myPage=$ID'>".$title."</a><br />";
					} 
				
				?>
				<input type="submit" name="verwijder" value="verwijder"/>
				
				<?php
					
					if (isset($_POST['verwijder'])) {
					$mySQL = "DELETE FROM content WHERE id= '$ID';";
					if (!($result = @ mysql_query ($mySQL, $connection)))
					die("Error " . mysql_errno() . " : " . mysql_error());
					}
				?>				
			</form>			
		</div>
	</body>
</html>


geef elke name een [] mee, zodat het als een array wordt gezien.
Bij een checkbox is de name altijd gelijk binnen een groep, en verschillen de values.

Dus:

<?php
echo "<input type='checkbox' name='list[]' value='".$id."'><a href='editpage.php?myPage=".$ID."'>".$title."</a><br />";
?>

Vervolgens heb je dan in $_POST['list'] een array met alle aangevinkte checkboxes en het ID uit hun value.
Dit kan je dan met $split = implode($_POST['list'],','); uitlezen, en vervolgens in een DELETE FROM ... WHERE id IN($split) verwijderen.
Bedankt voor het antwoord, echter snap ik het nog niet helemaal (het 2de gedeelte). Het deleteknopje wat ik heb, moet ik daar die $_POST['list'] inzetten?
'list' is de checkbox, voorzien van een array, en $_POST['verwijder'] is de submitknop.

Reageren