Hallo,
Ik zit al een tijdje te klooien en heb de tuts gelezen,
maar het wil nog niet echt lukken.
Ik heb de volgende URl gecreƫerd door een form:

http://game-verslaving.nl/admin/
onderzoeks-
gegevens.php?delete=Delete+selected&todel=4&todel=5

Het script is iets uitgebreider, maar eerst wil ik de geselecteerde aantalen op het scherm krijgen.
In dit geval gaat het om '4' & '5'
Ik heb dit onderstaand scriptje
<?php
if(isset($_POST['delete'])){

foreach($_GET['todel'] as $check){
echo $check;
}

}else{
echo "post['delete'] bevat geen waarde.";
}
?>
Als resultaat zou hij toch: 45
moeten weergeven, maar er wordt helemaal niets weergegeven.
Ziet iemand wat ik fout doe? Ik namelijk niet.

Alvast bedankt!

edit: URL opgesplitst, google adds zaten er voor:)
Je url klopt niet. Er staat twee keer todel in.
ok...
Maar het gaat om een manier om verschillende regels te verwijderen,
hou zou de URL eruit moeten zien als ik regel 4 & 5 Wil verwijderen?

iets van www.url.nl?todel=4,5 ?
Ik denk dat je een array wilt versturen met daarin de waarden van items (records?) die gewist moeten worden. Het is dan waarschijnlijk handiger om dat via de POST methode te doen. Via GET kun je ook wel een array versturen, maar het gaat iets moeilijker.
[edit]Ik heb trouwens net even getest, en jouw methode met een komma tussen de getallen kan ook.[/edit]
Mag ik je vragen hoe je dat getest hebt?
Ik probeer het nu zelf en het wil niet lukken...

Inderdaad ik heb allemaal records die ik met een checkbox kan aanvinken en dan wil verwijderen.

Dit wordt dan met $_POST verzonden, maar het weer opvragen wil niet lukken.
Heb ook de 2 tuts die op phphulp staan erbij...
Ik zal een voorbeeldje maken voor je. Moment.
[edit]Komtie:[/edit]

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Checkboxen ophalen</title>
</head>

<body>
	<h1>Checkboxen ophalen</h1>
	<?php
		if ($_SERVER['REQUEST_METHOD'] == 'POST') {
			if (isset ($_POST['delete'])) {
				foreach ($_POST['delete'] as $item) {
					echo '<p>Item met waarde ' . $item . ' kan gewist worden</p>';
				}
			}
		}
	?>
	<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
		<p>
			<input id="delete1" name="delete[]" type="checkbox" value="1" />
			<label for="delete1">een</label>
		</p>
		<p>
			<input id="delete2" name="delete[]" type="checkbox" value="2" />
			<label for="delete2">twee</label>
		</p>
		<p>
			<input id="delete3" name="delete[]" type="checkbox" value="3" />
			<label for="delete3">drie</label>
		</p>
		<p>
			<input id="delete4" name="delete[]" type="checkbox" value="4" />
			<label for="delete4">vier</label>
		</p>
		<p>
			<input type="submit" value="verzenden" />
		</p>
	</form>
</body>
</html>

Online voorbeeld: checkboxen ophalen
Dank je Jan! Ik zal er mee aan het knutselen gaan.
Het eerste verschil zit em al in het volgende:

(jij hebt een HTML table, ik een PHP, ik neem aan dat het geen verschil maakt?)
<?php
Bij de table:

echo "<form method='_POST'>

veranderd in:

echo "<form method='_POST' action='$_SERVER["REQUEST_URI"]'>

En bij het ophalen van de gegevens heb ik:

$_SERVER['REQUEST_METHOD'] = 'POST';

?>

Zou het daar in kunnen zitten?

Dit:

<?php
    echo "<form method='_POST'>
?>

moet natuurlijk:

<?php
    echo '<form method="post" action="'.$_SERVER['REQUEST_URI'].'">';
?>

zijn.
Nja het is een bewerking van een bestaand script, om alles te herschrijven is wel heel veel werkt.
Maar inderdaad dat kon ik wel veranderen. Had ik ook al gedaan voor je poste:)
Volgens mij zit em de fout hier in:

Door een while loop komt dit aan het eind van elk recort:

<?php
echo '<td><input type="checkbox" class="check" name="todel" value="'.$rows.'"></td>';
?>

Waarschijnlijk de ' en de " verkeerd om... maar dat kan niet anders om anders loopt het script niet meer:s

Reageren