Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Consulta SQL no PHP


Paxtel

Pergunta

Gostaria de ajuda na realização de consultas SQL, esse é meu primeiro projeto em PHP e não consigo fazer a parte de consulta de jeito nenhum, procurei já e não consigo achar o erro, a parte de inserir e deletar dados está funcionando, mas quando tento consultar aparece o seguinte erro: Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in...

O meu código é o seguinte:

<?php
    include("conectar.inc");
    
    $objetivo = $_POST['objetivo'];

//ADICIONAR
if($objetivo=="adicionar") {
    $cod = $_POST['codProd'];
    $nome = $_POST['nomeProd'];
    $desc = $_POST['descProd'];
    $embalagem = $_POST['embalagem'];
    $receita = $_POST['receita'];
    $foto = $_FILES['fotoProd'];
    
    $sql = "INSERT INTO produtos VALUES ";
    $sql .=
    "('','$cod','$nome','$desc','$embalagem','$receita','$foto')";
    $query = mysql_query($sql);
    echo"<script>alert('Produto cadastrado com sucesso.')
    location('adicionar.htm');
    </script>";
    echo '<a href="adicionar.htm">';
    }
    
//CONSULTAR
elseif($objetivo=="consultar") {
        $cod = $_POST['codProd'];
        $nome = $_POST['nomeProd'];
        $consulta = "SELECT * FROM produtos WHERE codProd=$cod OR nomeProd=$nome";
        $sql = mysql_query($consulta);
        $linhas = mysql_num_rows($sql) or die(mysql_error());
        
        for($contador=0; $contador<$linhas; $contador++) {
            $cod = mysql_result($consulta, $contador, "codProd");
            $nome = mysql_result($consulta, $contador, "nomeProd");
            $desc = mysql_result($consulta, $contador, "descProd");
            $embalagem = mysql_result($consulta, $contador, "embalagem");
            $receita = mysql_result($consulta, $contador, "receita");
            $foto = mysql_result($consulta, $contador, "fotoProd");
            
            echo "Código do Produto: $cod <br>";
            echo "Nome do Produto: $nome <br>";
            echo "Descrição do Produto: $desc <br>";
            echo "Embalagem: $embalagem <br>";
            echo "Receita: $receita <br>";
            echo "Foto: $foto <br>";
            }


    }

//DELETAR    
elseif($objetivo=="deletar") {
        $cod = $_POST['codProd'];

        $deletar = "DELETE FROM produtos WHERE codProd=$cod";
        $sql = mysql_query($deletar);
        echo"<script>alert('Produto deletado com sucesso.')
        location('deletar.htm');
        </script>";
    }
    
//EDITAR
elseif($objetivo == "editar") {
    $cod = $_POST['codProd'];
    $nome = $_POST['nomeProd'];
    $desc = $_POST['descProd'];
    $embalagem = $_POST['embalagem'];
    $receita = $_POST['receita'];
    $foto = $_FILES['fotoProd'];

$sql = mysql_query("UPDATE produtos
    set codProd = '$cod' nomeProd = '$nome', descProd = '$desc', embalagem = '$embalagem', receita = '$receita', foto = '$foto' where id = '$id' OR codProd='$cod'");
    echo "<script>alert('Usuario alterado com sucesso!')</script>";
    echo "<script> window.location = 'index.php?acao=listar'</script>";

    mysql_close($conn);
    ?>

Caso eu tenha feito algo muito errado, considerem que é meu primeiro projeto haha obrigado...

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Apareceu Parse error: syntax error, unexpected $end, ai eu vi que faltava fechar um }, depois de fechado apareceu

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 '' at line 1...

isso seria erro no código SQL?

Obrigado...

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpem-me estar reabrindo esse tópico, mas é que estou com o mesmo problema.

Meu codigo está assim:

<?php

include "conexao.php";

$usernovo = $_POST['usernovo'];
$passnovo = $_POST['passnovo'];
$confirma = $_POST['confirma'];
$userconf = $_POST['userconf'];
$passconf = $_POST['passconf'];

$buscauser = "SELECT * FORM usuarios WHERE usuario = '$usernovo'";
$checauser = mysql_query($buscauser) or die (mysql_error());
$contuser = mysql_num_rows($checauser);

if ($contuser =< 1){

    $msg = 01;
    header ("location:novousuario.php?msg=$msg");

}elseif ($passnovo != $confirma){

    $msg = 02;
    header ("location:novousuario.php?msg=$msg");

}elseif ($userconf != $useradm){

    $msg = 03;
    header ("location:novousuario.php?msg=$msg");

}elseif ($passconf !=  $passadm){

    $msg = 04;
    header ("location:novousuario.php?msg=$msg");

}else{

    $execut = "INSERT INTO usuarios (usuario, senha) VALUEs ('$usernovo', '$passnovo')";
    mysql_query ("$execut");
    
    $msg = 05;
    header ("location:novousuario.php?msg=$msg");
}

?>

e está me retornando a seguinte mensagem de erro:

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 'FORM usuarios WHERE usuario = 'teste5'' at line 1

Aparentemente está tudo correto, já tentei remover as aspas na consulta mas retorna o mesmo erro.

alguém me da uma luz ai!!!

vlw.

Editado por Denis Goulart
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...