Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

30-03-2010 08:30

ola galera
esse comando deveria exlcuir do banco de dados o registro. ele exlcui beleza. mas tem varios valores. e ao inves de ele excluir o selecionado ele exclui o ultimo. pq sera? ja mexi em tudo e nada. desde ja obrigado.

<? echo "<a href=\"$PHP_SELF?oper=listar&op=processos&desejo=excluir&id1=$id1\"><font color=\"$text_cor1\" size=\"1\" face=\"verdana\"><b>Excluir</font></a>" ?>


<? $desejo= $_GET['desejo']; $op= $_GET['op']; if (($desejo=='excluir') and ($op=='processos')) { $sql1 = mysql_query("DELETE FROM $tb8 where id='$id1'"); if (!$sql1) {echo "Nao Foi Excluido";} else { echo "<br><font color=\"$text_cor1\" size=\"1\" face=\"verdana\">&nbsp;&nbsp;Excluido(a) com sucesso <b>Aguarde.....</b></font><meta http-equiv='refresh' content='1;URL=index.php?oper=listar&op=processos'><br>";} } ?>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

30-03-2010 08:39

Observar a seção que está postando
MOVIDO: de PHP para MySQL

Você tem que extrair todos os campos de uma vez

extract($_GET);

não definiu $tb8
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

30-03-2010 08:54

$tb8 vem do config.php ai ta certo.

<? $host = "localhost"; $usuariodb = "root"; $senhadb = ""; $db = "bd"; $tb8="processos"; $conexao=mysql_connect("$host", "$usuariodb", "$senhadb") or die ('NÃO FOI POSSIVEL CONECTAR' . mysql_error()); mysql_select_db ("$db") or die("ERRO AO CONECTAR db"); ?>

aki coloquei oque lista e oque exclui o que altera ta ok o delistar tbm.

<? if(($oper=="listar")&&($op=="processos")){ ?> <table width="100%"> <tr bgcolor="#3399CC"> <td height="12" bgcolor="#3399CC"><div align="center"><font color="#FFFFFF"><strong>:: CART&Otilde;ES ::</strong></font></div></td> </tr> <tr bgcolor="#3399CC"> <td height="12" bgcolor="#3399CC"><div align="left"><b><strong><font color="#FFFFFF" size="1"><a href="index.php?oper=cadastrar&op=processos"><img src="images/add.png" width="14" height="14" border="0" align="absmiddle"> CADASTRAR</a> :: <img src="images/listar.png" width="16" height="16" border="0" align="absmiddle"></font></strong></b><font color="#FFFFFF" size="1"><b> LISTAR </b></font></div></td> </tr> <tr> <td> <p>&nbsp;</p> <table width="245" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#F0F0F0" style="border-bottom:1; border-top:1 solid #990000"> <? $sql = mysql_query("SELECT id,numero,processo,tipo FROM $tb8 ORDER BY id desc"); while ($reg = mysql_fetch_array($sql)){ $id1 = $reg['id']; $numero = $reg['numero']; $processo = $reg['processo']; $tipo = $reg['tipo']; ?> <TR align="left"> <TD height="7" align="left">&nbsp;</TD> <TD align="left">&nbsp;</TD> </TR> <TR align="left"> <TD width="200" height="7" align="left" style="border-bottom: 1 solid #3399CC"><font face="verdana" size="1" color="0066ff"><strong>NOME</strong></font></TD> <TD width="381" align="left" style="border-bottom: 1 solid #3399CC"><font face="verdana" size="1" color="#0066ff"><? echo $numero; ?></font></TD> </TR> <TR align="left" valign="top"> <TD height="19" align="left" valign="top" style="border-bottom: 1 solid #3399CC"><font color="0066ff" size="1" face="verdana"><strong>QUANTIDADE</strong></font></td> <TD align="left" valign="top" style="border-bottom: 1 solid #3399CC"><font color="#0066ff" size="1" face="verdana"><? echo $processo; ?></font></td> </tr> <TR align="left" valign="top"> <TD height="19" align="left" valign="top" style="border-bottom: 1 solid #3399CC"><font color="0066ff" size="1" face="verdana"><strong>TIPO</strong></font></td> <TD align="left" valign="top" style="border-bottom: 1 solid #3399CC"><font color="#0066ff" size="1" face="verdana"><? echo $tipo; ?></font></td> </tr> <TR align="left" valign="top"> <TD colspan="2" align="left" valign="top" style="border-bottom: 1 solid #3399CC">&nbsp;</td> </tr> <TR align="left" valign="top"> <TD colspan="2" align="center" valign="baseline" bgcolor="<? echo $td_cor2 ?>" style="border-bottom: 1 solid #3399CC"> <div align="center"><? echo "<a href=\"$PHP_SELF?oper=alterar&op=processos&id1=$id1\"><font color=\"$text_cor1\" size=\"1\" face=\"verdana\"><b>Alterar</font></a>"?> - <? echo "<a href=\"$PHP_SELF?oper=listar&op=processos&desejo=excluir&id1=$id1\"><font color=\"$text_cor1\" size=\"1\" face=\"verdana\"><b>Excluir</font></a>" ?></div></td> </tr> <? }?> </table> <TR align="left" valign="top"> <TD colspan="2" align="left" valign="top" bgcolor="<? echo $td_cor2 ?>"><div align="center"><font face="verdana" size="1" color="<? echo $text_cor1 ?>" <? $desejo= $_GET['desejo']; $op= $_GET['op']; if (($desejo=='excluir') and ($op=='processos')) { $sql1 = mysql_query("DELETE FROM $tb8 where id='$id1'"); if (!$sql1) {echo "Nao Foi Excluido";} else { echo "<br><font color=\"$text_cor1\" size=\"1\" face=\"verdana\">&nbsp;&nbsp;Excluido(a) com sucesso <b>Aguarde.....</b></font><meta http-equiv='refresh' content='1;URL=index.php?oper=listar&op=processos'><br>";} } ?>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

30-03-2010 09:11

Dei uma reorganizada no script. Observe que muitas vezes é necessário passar todos parâmetros usados dentro do GET, caso contrário dá erro.

<a href="<?php echo $PHP_SELF; ?>?oper=listar&op=processos&desejo=excluir&id1=14">Excluir</a>

<?php if($_GET['oper']) { extract($_GET); // tabela $tabela = "..."; // conexão $conexao = mysql_connect("localhost", "login", "senha") or die(mysql_error()); $db = mysql_select_db("bd"); if(($desejo=='excluir') and ($op=='processos')) { $sql1 = mysql_query("DELETE FROM $tabela where id='$id1'"); if(!$sql1) { echo "Nao Foi Excluido"; } else { echo "excluído, aguarde..."; } } } ?>

0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

30-03-2010 09:13

na verdade notei ki no link ele passa o ID certo. conferi no banco de dados. tudo certinho. o h ref mostra la em baixo que se clicar vai pro link ki deleta com o ID certo normal. mas ao clicar ele exclui o ultimo registro de todos que estao cadastrados

<? $sql = mysql_query("SELECT id,numero,processo,tipo FROM $tb8 ORDER BY id desc"); while ($reg = mysql_fetch_array($sql)){ $id1 = $reg['id']; $numero = $reg['numero']; $processo = $reg['processo']; $tipo = $reg['tipo']; ?>

esse eh o code que lista os dados para a exlcusao
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

30-03-2010 09:25

São vários links? Já percebeu se o id não está sendo repetido em todos? Porque o id que é passado para a query é o que vem pelo link.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

30-03-2010 09:52

sim sao varios links. pq eu cadastro varios registros na tabela. por exemplo

id 1
campo banana
tipo fruta

id 2
campo melancia
tipo fruta

id 3
campo beterraba
tipo vegetal

id 4
campo gasolina
tipo combustivel

id 5
campo carro
tipo automovel

se eu passar o link pelo excluir de qualquer um retorna o id certo mas se eu clicar por exemplo pra excluir o id3 ele nao exclui o id3 exclui o id 5. no caso nao necessariamente o 5 mas sim o ultimo que tiver.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

30-03-2010 09:57

Faz o seguinte, coloca o script que indiquei no seu sistema e roda ele, define um id que tenha ai. Eu testei aqui e está deletando o id certo, mandado pelo link. Se o teste der Ok, pega esse bloco do script que indiquei e usa ele, só alterando para seus dados de conexão...
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

30-03-2010 10:27

deu certo. acredto que sim.

adicionei o extract($_GET); após o $op= $_GET['op'];

aparentemente ta OK. Muito Obrigado.

outra duvida o codigo abaixo nao deveria listar todos os registros da tabela?
<? include("include/conexao.php"); ?> <?php $sql = "SELECT * FROM processos ORDER BY id DESC"; $resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta ao banco de dados"); while ($linha=mysql_fetch_array($resultado)) { $id = $linha["id"]; $numero = $linha["numero"]; $processo = $linha["processo"]; $tipo = $linha["tipo"]; } ?>

engraçado. só lista o primeiro
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

30-03-2010 10:42

O extract pode ser usado para extrair no while também

extract($linha);

Você colocou o echo para mostrar o resultado? No mais parece ok. A não ser que você tenha outra query com o mesmo nome ai.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

30-03-2010 13:04

acredito eu que os echo estao corretos

<? echo "$numero"; ?> <? echo "$processo"; ?> <img src="<? echo "$tipo"; ?>"

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

30-03-2010 13:09

Falei em relação ao while

while ($linha=mysql_fetch_array($resultado)) {

$resultado é relativo a query. Veja se você não tem outra query com o mesmo nome $resultado

Se só tem essa query com esse nome então ou você está rodando uma query dentro de outra, ou, só tem um registro mesmo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

31-03-2010 20:17

coloquei o extract($_GET); e mesmo assim nao funcionou.

<?php $sql = "SELECT * FROM processos ORDER BY id DESC"; $resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta ao banco de dados"); while ($linha=mysql_fetch_array($resultado)) { $id = $linha["id"]; $numero = $linha["numero"]; $processo = $linha["processo"]; $tipo = $linha["tipo"]; } ?>

o SELECT acredito estar correto. e tem mais de 1 registro sim. uns 5 pra teste. mesmo assim aparece soh um. o ultimo
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

31-03-2010 20:26

Provavelmente é conflito. Cria um arquivo, coloca só a conexão e esse script, dá um echo em alguma var e ver quantos resultados retornam.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

31-03-2010 20:44

na verdade consegui no arkivo de teste

tirei isso da consulta
}

e coloquei separado depois dos echo mostrou todos mas mas no arquivo original nao deu pq mostrou tbm todo o conteudo antes do echo. tipo imagens tabelas...

<? } ?>
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

31-03-2010 20:54

Se no arquivo de teste funcionou, você tem que revisar todo seu script, porque se tem mais de um registro, então um while deve estar dando conflito em outro. Verifique se vários whiles não tem o mesmo nome.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

31-03-2010 21:05

kkk. consegui. fui pela logica. se eu comemço um while no começo do script e coloco o término dele } num lugar que tudo que esta entre repete. eu peguei a consulta e coloquei no meio da tabela. no começo da parte que eh pra listar e coloquei ele no fim. ai repete as células com um resultado cada. e eu quebrando a cabeça. kkk. ficou assim

<tr><?php $sql = "SELECT * FROM processos ORDER BY id DESC"; $resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta ao banco de dados"); while ($linha=mysql_fetch_array($resultado)) { $id = $linha["id"]; $numero = $linha["numero"]; $processo = $linha["processo"]; $tipo = $linha["tipo"]; ?> <td height="20" align="left" valign="middle" bgcolor="#FFFFFF"><? echo "$numero"; ?></td> <td bgcolor="#FFFFFF"><div align="center"><? echo "$processo"; ?></div></td> <td bgcolor="#FFFFFF"><div align="center"><img src="<? echo "$tipo"; ?>"> </td> </tr><? } ?>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Excluir cadastro do bd pelo link

31-03-2010 21:36

Boa, é isso ai :)
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 383
Sexo: Masculino
Localização: criciuma

Excluir cadastro do bd pelo link

31-03-2010 21:41

muito obrigado pela ajuda.
0

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado