Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

tspenido

[Resolvido] Apagar vários registro de uma só vez!

Recommended Posts

Olá pessoal,

bom estou com um problema (ja procurei na net mas nada), fiz uma pagina onde tem a opção de escolher várias imagens para apagar de uma vez só. como posso itilizar o php para apagar as linhas?

por exemplo:

 

passo por campo oculto o valor de id, depois recebo esta id, mas quando recebo (via post), so recebo uma só!

 

como proceder?

 

fico no aguardo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

passe como array..

<input type="hidden" name="id[]" value="3" />
<input type="hidden" name="id[]" value="2" />
<input type="hidden" name="id[]" value="5" />
ai você pode dar um implode()

http://www.php.net/implode

 

e então, fazer o delete, com um IN()

DELETE FROM tabela WHERE id IN('2,5');

Compartilhar este post


Link para o post
Compartilhar em outros sites

passe como array..

<input type="hidden" name="id[]" value="3" />
<input type="hidden" name="id[]" value="2" />
<input type="hidden" name="id[]" value="5" />
ai você pode dar um implode()

http://www.php.net/implode

 

e então, fazer o delete, com um IN()

DELETE FROM tabela WHERE id IN('2,5');

Bom não tive uscesso com a dica. O problema mesmo é na hora de receber as variaveis. Ela é gerada de acordo com o cod abaixo:

function verImagensporCategoria($categoria, $pNumColunas, $pQuery){
		include("class.configbd.php");
			$sql = new conectar();
			$sql->conecta();
			$rs = $sql->executaBD("SELECT * FROM galeria WHERE pasta='$categoria'");
		
		if($sql->registros_num_rows($rs)!== 0){
		echo ("<table width='100%' border='0'>\n");
		for($i = 0; $i <= $sql->registros_num_rows($rs); ++$i) {
		for ($intCont = 0; $intCont < $pNumColunas; $intCont++) {
		$linha = $sql->fecth_arrayBD($rs);
		if ($i > $linha) {
		if ( $intCont < $pNumColunas-1) echo "</tr>\n";
		break;
		}
		$imagem_BD = $linha["foto01"];
		$nome_BD = $linha["nome"];
		$pasta_BD = $linha["pasta"];
		$data_BD = $linha["data"];
		$id_BD = $linha["id"];
		
		$texto = " <table width='0' border='0' cellspacing='0' cellpadding='0'>
                      <tr>
                        <td>
                          <table width='0' border='0' cellspacing='0' cellpadding='0'>
                            <tr>
                              <td colspan='4'> </td>
                            </tr>
                            <tr>
                              <td width='100'><img src='../../../galeria/".$categoria."/".$imagem_BD."' width='100' height='100' /></td>
                              <td width='10'> </td>
                              <td width='206'><table width='0' border='0' cellspacing='0' cellpadding='0'>
                                <tr>
                                  <td><span class='sobTitulos'>Nome: ".$nome_BD."</span></td>
                                </tr>
                                <tr>
                                  <td><img src='images/spacer.gif' width='1' height='5'></td>
                                </tr>
                                <tr>
                                  <td><span class='sobTitulos'>Data da Postagem: ".$data_BD."</span></td>
                                </tr>
                                <tr>
                                  <td><input name='id[]' type='hidden' value='".$id_BD."'></td>
                                </tr>
                                <tr>
                                  <td><table width='0' border='0' cellspacing='0' cellpadding='0'>
                                    <tr>
                                      <td width='20'><span class='sobTitulos'>
                                        <input name='iten' type='checkbox' id='iten' value='".$imagem_BD."'>
                                      </span></td>
                                      <td width='10'> </td>
                                      <td width='166'><span class='sobTitulos'>Selecione para Apagar</span></td>
                                    </tr>
                                  </table></td>
                                </tr>
                              </table></td>
                              <td width='31' valign='top'> </td>
                            </tr>
                          </table>
                        </td>
                      </tr>
                    </table>";		
		if ( $intCont == 0 ) echo "<tr>\n";
		echo "<td>". $texto ."</td>\n";
		if ( $intCont == $pNumColunas-1 ) {
		echo "</tr>\n";
		} else { $i++; }
		}
		}
		echo ('</table>');
		}else{
				echo("<td><table width='15%' border='0' cellspacing='0' cellpadding='0' align='center'>
  <tr>
    <td><table width='0' border='0' align='left' cellpadding='0' cellspacing='0' bordercolor='#000000' bgcolor='#FFFFFF'>
      <tr>
        <td><table width='0' border='0' align='center' cellpadding='0' cellspacing='0'>
            <tr>
              <td><font size='2' color='#ff0000' face='Verdana'>Nenhum resultado encontrado.</font></td>
            </tr>
        </table></td>
      </tr>
    </table></td>
  </tr>
</table></td>
");	
		}

		
}

aqui que to falhando: <input name='id[]' type='hidden' value='".$id_BD."'>, antes tava assim: <input name='id' type='hidden' name='id' value='".$id_BD."'>

 

ai ele ate gera no html certo com as ids certas, mas na hora de passar via post da pau!

 

fico no aguardo de uma ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

na hora de passar via post da pau!

 

o que significa isso ??

 

como você faz o post ?

no teu caso, você apaga oque selecionar no checkbox, certo ? então o array, deveria estar nele:

<input name='iten[]' type='checkbox' id='iten' value='".$imagem_BD."'>

Compartilhar este post


Link para o post
Compartilhar em outros sites

rsrs!

 

" na hora de passar via post da pau! ", siginifica: que não dava certo!

 

fiz um form e coloquei isso no form:

<table width='0' border='0' cellspacing='0' cellpadding='0'>
                      <tr>
                        <td>
                          <table width='0' border='0' cellspacing='0' cellpadding='0'>
                            <tr>
                              <td colspan='4'> </td>
                            </tr>
                            <tr>
                              <td width='100'><img src='../../../galeria/".$categoria."/".$imagem_BD."' width='100' height='100' /></td>
                              <td width='10'> </td>
                              <td width='206'><table width='0' border='0' cellspacing='0' cellpadding='0'>
                                <tr>
                                  <td><span class='sobTitulos'>Nome: ".$nome_BD."</span></td>
                                </tr>
                                <tr>
                                  <td><img src='images/spacer.gif' width='1' height='5'></td>
                                </tr>
                                <tr>
                                  <td><span class='sobTitulos'>Data da Postagem: ".$data_BD."</span></td>
                                </tr>
                                <tr>
                                  <td><input name='id[]' type='hidden' value='".$id_BD."'></td>
                                </tr>
                                <tr>
                                  <td><table width='0' border='0' cellspacing='0' cellpadding='0'>
                                    <tr>
                                      <td width='20'><span class='sobTitulos'>
                                        <input name='iten' type='checkbox' id='iten' value='".$imagem_BD."'>
                                      </span></td>
                                      <td width='10'> </td>
                                      <td width='166'><span class='sobTitulos'>Selecione para Apagar</span></td>
                                    </tr>
                                  </table></td>
                                </tr>
                              </table></td>
                              <td width='31' valign='top'> </td>
                            </tr>
                          </table>
                        </td>
                      </tr>
                    </table>

Mando por post, mas só chega o ultimo iten. neste caso ele aparece 3 imagens, ele apaga o qeu for selecionado pelo checkbox.

por exemplo: se são 3 imagens e cada uma tiver como id= 022, id=023, id=024, so chega no outro lado o ultimo.

 

Valeu pela ajuda, to tentando aqui!

fico no aguardo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

 

Faz o seguinte:

 

1 - No Checkbox voce cria um arranjo como nome do elemento, p. ex.:

 

<input name="[b]cod[][/b]" type="checkbox" value="<=$valor_qualquer?>"/>

2 - Se voce estiver enviando o formulario para a a mesma pagina põe isso no começo ou perto do começo:

 

<?php
        mysql_select_db($base_de_dados_qualquer, $variavel_que_contem_os_dados_para_conexao);
	if(isset($_POST['cod'])){ //Verifica se existe post e se nele há o elemento COD
	$excluir = $_POST['cod']; // Caso exista o elemento COD no POST cria uma variavel e atribui a ela o elemento COD passado pelo POST
	$verifica = implode(", ", $excluir); // Adiciona a cada valor do arranjo, representado por $excluir, uma vírgula e um espaço
	foreach ($_POST['cod'] as $item) { // Para cada um valor passado pelo POST adicione a uma variavel chamada item
	$sql = mysql_query("DELETE FROM TABELA_QUALQUER WHERE id='$item'") or die(mysql_error()); // Executa a consulta para exclusao dos itens
	}

}
?>

Boa sorte e até mais!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.