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: 395
Sexo: Masculino
Localização: VOLTA REDONDA RJ
Contato:

Verificar se existe para deletar

24-04-2013 12:04

Quero deletar dados de 3 tabelas ao mesmo tempo, porém tenho de verificar se existe os dados antes em cada tabela, para depois deletar caso exista.
isto acontece pq tenho dados repetidos nestas.

vindo através do GET , vai para esta página :

<?php require_once('Connections/estoque.php'); $cod_est = $_GET["cod_est"]; $result = mysql_query("SELECT * FROM est WHERE cod_pri = '$cod_est'") or die(mysql_error());      $row = mysql_num_rows($result);     if  ($row > 0){     $query = mysql_query("DELETE FROM est WHERE cod_pri = '$cod_est'") or die (mysql_error());     }      $result2 = mysql_query("SELECT * FROM local WHERE cod_loc = '$cod_est'") or die(mysql_error());      $row2 = mysql_num_rows($result2);     if  ($row2 > 0){     $query2 = mysql_query("DELETE FROM local WHERE cod_loc = '$cod_est'") or die (mysql_error());     }      $result3 = mysql_query("SELECT * FROM estoque WHERE cod_est = '$cod_est'") or die(mysql_error());      $row3 = mysql_num_rows($result3);     if  ($row3 > 0){     $query3 = mysql_query("DELETE FROM estoque cod_est = '$cod_est'") or die (mysql_error());     } header("Location: ".$_SERVER['HTTP_REFERER'].""); ?>

erro q aparece:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cod_est = '10'' at line 1

o Link esta passando corretamente:
est/deleta.php?cod_est=10

Neste caso por exemplo eu sei que este só se encontra na tabela estoque , porem testei com outros que estão nas demais tabelas, deu o mesmo erro.

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

Verificar se existe para deletar

24-04-2013 13:21

Você pode usar na sua query o IGNORE. Isso faz com que se sua query não for executada, não retorne erro. Veja o exemplo

$query=mysql_query("DELETE IGNORE FROM tabela WHERE coluna='valor'");
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 395
Sexo: Masculino
Localização: VOLTA REDONDA RJ
Contato:

Verificar se existe para deletar

24-04-2013 15:23

Continua o erro
<?php require_once('Connections/estoque.php'); $cod_est = $_GET['cod_est']; //$result = mysql_query("SELECT * FROM est WHERE cod_pri = '$cod_est'") or die(mysql_error());      //$row = mysql_num_rows($result);     //if  ($row > 0){     $query = mysql_query("DELETE IGNORE FROM est WHERE cod_pri = '$cod_est'") or die (mysql_error());     //}      //$result2 = mysql_query("SELECT * FROM local WHERE cod_loc = '$cod_est'") or die(mysql_error());      //$row2 = mysql_num_rows($result2);     //if  ($row2 > 0){     $query2 = mysql_query("DELETE IGNORE FROM local WHERE cod_loc = '$cod_est'") or die (mysql_error());     //}      //$result3 = mysql_query("SELECT * FROM estoque WHERE cod_est = '$cod_est'") or die(mysql_error());      //$row3 = mysql_num_rows($result3);     //if  ($row3 > 0){     $query3 = mysql_query("DELETE IGNORE FROM estoque cod_est = '$cod_est'") or die (mysql_error());     //} header("Location: ".$_SERVER['HTTP_REFERER'].""); ?>

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

Verificar se existe para deletar

24-04-2013 15:28

Está faltando o WHERE

 $query3 = mysql_query("DELETE IGNORE FROM estoque cod_est = '$cod_est'") or die (mysql_error()); 

0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 395
Sexo: Masculino
Localização: VOLTA REDONDA RJ
Contato:

Verificar se existe para deletar

24-04-2013 15:42

Perfeito, o erro fez com q aprendesse mais ......
NÃO TRABALHAR QUANDO AS CRIANÇAS ESTIVEREM EM CASA !

E O IGNORE .
0

Quem está online

Usuários navegando neste fórum: Bing [Bot]