Jump to content
Luciano Marques

verificar se cadastro já existe na tabela

Recommended Posts

Bem galera, estou com um trabalho aqui e me deparei com um problema que parece simples, mas ta complicado pra mim. É o seguinte: Quero verificar se a string existe na tabela do db. e colocar uma condição IF para gerar uma ação. alguém poderia me dar uma luz? Exemplo: $bol = 'bola'; verificar se existe 'bola' na tabela e se existir $bol = 0; mais ou menos isso.

Share this post


Link to post
Share on other sites

Você pode fazer assim:

$sql = "select * from tabela where nome='bola'";

$query = mysqli_query($conexao, $sql);

$array = mysqli_fetch_array($query);

if($array!=null){

##quer dizer que existe um registro com nome igual à bola

}

else{

##quer dizer que não existe

}

Pra mim aqui funcionou. Deve ter formas mais elegantes que essa por aí

Share this post


Link to post
Share on other sites
11 minutos atrás, agness disse:

Você pode fazer assim:

$sql = "select * from tabela where nome='bola'";

$query = mysqli_query($conexao, $sql);

$array = mysqli_fetch_array($query);

if($array!=null){

##quer dizer que existe um registro com nome igual à bola

}

else{

##quer dizer que não existe

}

Pra mim aqui funcionou. Deve ter formas mais elegantes que essa por aí

Obrigado por responder.
eu fiz dessa forma, mas mesmo com o dado não existindo na tabela ele ainda me retorna apenas o primeiro parametro.

$sql = "select * from tabela where nome='bola'";

$query = mysqli_query($conexao, $sql);

$array = mysqli_fetch_array($query);

if($array!=null){

$bola = 0;

}

else{

$bola = 1;

}

echo $bola;  //sempre me retorna $bola = 0; mesmo não existindo na tabela.

Share this post


Link to post
Share on other sites

estranho, tenta usar o echo pra ver os valores do array, tipo:

echo $array[0];

echo $array[1];

 

pra ver se realmente tem valores la

 

se tiver, ele entra no if, mas não deveria ter nesse caso

Share this post


Link to post
Share on other sites

@Luciano Marques

 

Recomendo você a usar assim:

 

// Para o charset das páginas
ini_set('default_charset','UTF-8');

// Definindo variaveis de conexão com o Banco de Dados
$enddb = "localhost:3306";
$user = "root";
$pass = "";
$database = "db_teste";

// Acesso Local
$conexao = mysqli_connect($enddb,$user,$pass,$database);

//Teste resultado da conexão
if(!$conexao){
    echo "Problemas ao realizar a conexao com o banco de dados (".mysqli_connect_error().")";
} else {
    echo "Conexão realizada com sucesso!";
}

//Iniciar busca a sua tabela com a palavra declarada abaixo.
$var_buscar_por = "Bola";

$sql = "select * from tabela where nome = '".$var_buscar_por."'";
$query = mysqli_query($conexao, $sql);

if ($validar_usuario = mysqli_fetch_array($query)) {
    $var_resultado = "Encontrei a plavara: ".$var_buscar_por;
} else {
    $var_resultado = "Não encontrei a plavara: ".$var_buscar_por;
}

echo $var_resultado;

 

Espero ter ajudado.

 

Att.

Felipe Coutinho

Share this post


Link to post
Share on other sites
42 minutos atrás, Felipe Guedes Coutinho disse:

@Luciano Marques

 

Recomendo você a usar assim:

 


// Para o charset das páginas
ini_set('default_charset','UTF-8');

// Definindo variaveis de conexão com o Banco de Dados
$enddb = "localhost:3306";
$user = "root";
$pass = "";
$database = "db_teste";

// Acesso Local
$conexao = mysqli_connect($enddb,$user,$pass,$database);

//Teste resultado da conexão
if(!$conexao){
    echo "Problemas ao realizar a conexao com o banco de dados (".mysqli_connect_error().")";
} else {
    echo "Conexão realizada com sucesso!";
}

//Iniciar busca a sua tabela com a palavra declarada abaixo.
$var_buscar_por = "Bola";

$sql = "select * from tabela where nome = '".$var_buscar_por."'";
$query = mysqli_query($conexao, $sql);

if ($validar_usuario = mysqli_fetch_array($query)) {
    $var_resultado = "Encontrei a plavara: ".$var_buscar_por;
} else {
    $var_resultado = "Não encontrei a plavara: ".$var_buscar_por;
}

echo $var_resultado;

 

Espero ter ajudado.

 

Att.

Felipe Coutinho

Nesse caso qual seria o valo da string $validar_usuario antes de passa pela condição IF? obrigado pela reposta.

Share this post


Link to post
Share on other sites

ela recebe um registro (creio que o primeiro) da tabela buscado pelo select em forma de array. Se não existir esse registro, ela retorna false. Não é isso, Felipe Coutinho?

Share this post


Link to post
Share on other sites

Galera Consegui Resolver.  Vou deixar minha solução aqui para quem precisar. E Desde já agradeço ao @agness e ao @Felipe Guedes Coutinho pela força. segue o código:

 

<?

 

$host = 'localhost';

$user ='root'

$pass =''';

$db ='';

$conn = mysqli_connect($host, $user, $pass, $db);

 

 

$bola = mysqli_real_escape_string($conn, $_POST['bola']); 

 

 

$sql="SELECT bola FROM itens  WHERE bola = '{$bola}'";
$query = mysqli_query($conn, $sql);
$rows = mysqli_num_rows($query);

if($rows == 1){
echo 'Bola já existe';
}else{
 
    echo 'Ainda não temos bola';
}

 

 

?>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Ferdz-Agencia-Digital
      @Matheus Tavares
       
      Estou montando uma API para usar com BD MySQL, mas futuramente migraremos o BD para MongoDB... deverei mudar muitas coisas da API ? Terei muito retrabalho ?
       
      O que acontece é que o projeto já existe e atualmente o BD é em MySQL e APIs em PHP... mas o projeto será migrado para a stack  MERN (MongoDB, Express, React e Node).
       
      A questão não é só performance, mas sim poder modernização pois o projeto irá se expandir precisa ser melhor escalável e a STACK será todo refeita, como disse acima, será usada MERN.
    • By FerdzFernando
      Estou montando uma API para usar com BD MySQL, mas futuramente migraremos o BD para MongoDB... deverei mudar muitas coisas da API ? Terei muito retrabalho ?
       
      O que acontece é que o projeto já existe e atualmente o BD é em MySQL e APIs em PHP... mas o projeto será migrado para a stack  MERN (MongoDB, Express, React e Node)
    • By Kelven
      Bom dia pessoal tudo bem?
      Então, estou trabalhando em um site em php e preciso usar a api do facebook para obter o feed do instagram, porém a chave token é um conteúdo muito sensível, então decidi fazer em php para ela não ficar disponível do lado do cliente. Alguém sabe me dizer se é possível fazer isso? Porque eu pesquisando no google só achei maneiras de fazer em javascript.
    • By gersonab
      Boa noite, tenho pesquisado porém não encontrei, então vamos lá.
      tenho uma lista de itens ( documentos ) cadastrados no banco de dados e os seus respectivos arquivos em uma pasta, se eu preciso de um deles clico e faço o download deste, no entanto como fazer para fazer o download de vários ao selecionar com checkbox os que eu quero ?
      desculpem por não postar nenhum código, mas é que não estou sabendo como fazer os downloads de vários.
      Qual o procedimento correto ?
       
    • By Willian Simione
      Estou com duas tabelas onde  uma eu somo o km de cada carro, e outra que eu somo a quantidade de litragem abastcido, porem tem carro que não abastece na garagem e na hora d eeu mostrar  a media por carro abastecido ele acaba entrando no somatório e é onde da o erro Warning: Division by zero in, como faço pra fazer essa soma e excluir os carro que não estao com o abastecimento.Abaido deixo as tabelas
       
      Esse soma o KM , todos os carro tem KM
       $soma4 = $conectar->query("SELECT SUM(tkm) AS total FROM cad_km where carro='$carro'");
         $count4 = $soma4->fetchColumn();
      Esse soma a Litragem, porem o tem carro que não abastece, 
         $soma3 = $conectar->query("SELECT round(SUM(litros),0) AS total FROM cad_abastec where dtabastec BETWEEN '$data1' AND '$data2' and carro='$carro'");
         $count3 = $soma3->fetchColumn();
       

       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.