Ciao a tutti!
Vorrei cancellare dal db dei dati che ho riportato mediante una tabella avente dei chekbox.
Quando clicco cancella record dal form i dati non vengono cancellati.
come mai?
I file in questione sono: index.php, record.php e cancella.php
Grazie!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Edoardo Tassone">
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.custom.min.js"></script>
<link href="css/jquery.custom.css" rel="stylesheet" type="text/css" />
<link href="css/stile.css" rel="stylesheet" type="text/css" />
<title>My Web Site</title>
</head>
<body>
<div id="contenitore">
<div id="record">
<?php require 'php/record.php'; ?>
</div>
</div>
<script type="text/javascript">
$(function() {
$('tr:nth-child(even) ').addClass('even'); });
</script>
</body>
</html>
__________________________________________________ ____________________
<?php
// ********record.php ********
// richiamo lo script responsabile della connessione a MySQL
require 'connect.php';
$query = "SELECT id, nome, cognome, citta, indirizzo FROM dati_personali";
$res= mysql_query($query) or die(mysql_error($query));
if($res){
echo ' <form method="post" action="php/cancella.php" > ';
echo '<table cellspacing="0" cellpadding="15">
<th>Nome</th>
<th>Cognome</th>
<th>Cittá</th>
<th>Indirizzo</th>
<th>Cancella</th> ';
//prelevo i dati dal db mediante un indice
while($str=mysql_fetch_array($res)){//per ogni riga presente nel database memorizzata nella variabile $res,
//preleva i dati e inseriscili nelle variabili definite.
$id=$str['id'];
$nome=$str['nome'];
$cognome= $str['cognome'];
$citta= $str['citta'];
$indirizzo= $str['indirizzo'];
//stampo i dati prelevati nelle variabili, all'interno della tabella definita prima
echo '<tr>
<td>'.$nome.'</td>
<td>'.$cognome.'</td>
<td>'.$citta.'</td>
<td>'.$indirizzo.'</td>
<td><input type="checkbox" name ="checkbox [ ]" id="checkbox[ ]" value=" '.$id.' " /td>
</tr>'; //l'utilizzo delle parentesi quadre in checkbox, mi permette di trattare, nella pagina cancella.php,
//i valori di input trattati come un array, preché se le chckbox sono multiple le posso trattare solo tramite array
}//end while
echo '</table>
<input type="submit" class="bottone" value="Cancella i Record!"</p></form>';
}
__________________________________________________ ____________________
<?php
// ****** CANCELLA.PHP *****
require 'connect.php';
// $checkbox =isset($_POST['checkbox']); //checkbox è una variabile array che permette di
//prelevare i valori selezionati.
// $contatore = count( isset($_POST['checkbox']) ); //contatore serve ad contare le caselle checkbox selezionate
// for ($i=0; $i<$contatore; $i++) {
// $deleter=$checkbox[$i];
foreach (isset($_POST['checkbox']) as $key => $value){
$delete = "DELETE FROM dati_personali WHERE id = $value ";
$result = mysql_query($delete);
}
/* $query="DELETE FROM dati_personali WHERE id='$deleter' ";
$res= mysql_query($query) or die(mysql_error()); */
// }
if(isset($res)) {
header('Location: ../index.php ');
}else{
echo "Errore:".mysql_error();
}
?>