Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, irei tentar passar aqui a lógica de como podemos selecionar vários registros para exclusão, através de checkbox, tipo aqueles recadinhos do orkut que vocês selecionam e apagam todos os selecionados, vamos lá ?
Criando a tabela:
CREATE TABLE dados ( id_dados SMALLINT UNSIGNED NOT NULL ,nome VARCHAR( 40 ) NOT NULL ,idade VARCHAR( 3 ) NOT NULL ,
PRIMARY KEY ( id_dados ) ) ENGINE = MYISAM
INSERT INTO `dados` (`id_dados`, `nome`, `idade`) VALUES ('1', 'Alaerte Gabriel', '18'), ('2', 'Pedro', '20');
INSERT INTO `dados` (`id_dados`, `nome`, `idade`) VALUES ('3', 'Bruna', '18'), ('4', 'Evandro', '18');
Criamos a tabela e inserimos alguns dados para nosso projeto.
vamos agora para a parte que trará os dados, onde teremos os checkbox para marcar-mos os registros desejados para exclusão:
index.php
<?php
//Conectando com o banco de dados MysQL e selecionando a base de dados.
$con=mysql_connect('localhost','USUARIO_DB','SENHA_DB')or die('Erro na conexção, verifique os dados'.mysql_error($con));
mysql_select_db('BASE_DE_DADOS',$con)or die('Erro ao selecionar a tabela'.mysql_error($con));/*Veremos se a consulta retornou algum registro com a função, mysql_num_rows...
se sim, ou seja, se for diferente de 0 o número de registros, ele tras os dados encontrados, através de um loop WHILE.
*/
if(mysql_num_rows($selecao) != 0){
/* Buscamos os dados e jogamos na função mysql_fetch_row, em que. $ver[0] o 0 reprezenta o
primeiro campo da tabela dados e o $ver[1] o 1 reprezenta o segundo campo da tabela dados
pois o PHP começa as contagens do 0... */
echo "<form name=\"exclusao\" method=\"POST\" action=\"excluir.php\">";
while($ver=mysql_fetch_row($selecao)){
echo "Excluir : $ver[1]<input type=\"checkbox\" name=\"excluir[]\" value=\"$ver[0]\" /><br />";
}
echo "<input type=\"submit\" name=\"ok\" value=\"Excluir\" /></form>";mysql_close($con);
}
?>excluir.php
<?php
//Conectando com o banco de dados MysQL e selecionando a base de dados.
$con=mysql_connect('localhost','USUARIO_DB','SENHA_DB')or die('Erro na conexção, verifique os dados'.mysql_error($con));
mysql_select_db('BASE_DE_DADOS',$con)or die('Erro ao selecionar a tabela'.mysql_error($con));
//Verificamos se o método enviado pelo formulário é realmente o POST.
if($_SERVER['REQUEST_METHOD']=='POST'){
//Se sim, pegamos os dados em forma de vetor (array) e passamos para a variável $apagar.
$apagar=$_POST['excluir'];
/*Dou um loop para pegar os arrays e comparar com o valor de $i
Aqui que está o segredo da coisam se a variável $i que inicia em 0 for menor que os dados contidos
no array $apagar, ele vai incrementar até chegar ao valor, repetindo dentro do laço a função para deletar
a quantidade correta de dados selecionados...
*/
for($i=0; $i<count($apagar); $i++){
$sql=mysql_query("DELETE FROM dados WHERE id_dados='$apagar[$i]'")or die('Erro ao apagar os dados'.mysql_error($con));
}
/* verificamos com um IF simplificado se os dados foram excluídos. */
($sql) ? (print('Dados excluídos com êxito !')) : die('Erro ao excluir os dados.');
}
?>Até a próxima.
Abraços.
Carregando comentários...