Ir para conteúdo

POWERED BY:

Arquivado

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

Apocalipse81

Verificar se registro ja existe no banco de dados

Recommended Posts

Olá pessoal, tenho a seguinte query no meu "processar"

 

código:

 

switch ($acao) {
case 'add':


$id_equipamento   =$_POST["id_equipamento"];
$quantidade       =$_POST["quantidade"]?$_POST["quantidade"]:1;
$id_unidade       =$_POST["id_unidade"];
$id_rua           =$_POST["id_rua"];
$token_saida      =$_POST['token_saida'];
$dt = date("d/m/Y H:i:s");




$sql = "insert into entrada 
(id_equipamento, quantidade, dt_entrada, id_usuario, id_unidade, id_rua, token_saida)
values ('$id_equipamento','$quantidade', '$dt', 1, '$id_unidade', '$id_rua', '$token_saida')";


if ($con->exec($sql)) {
$msg = "Sucesso";
}


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


die;
break;

queria saber como faço para o token saída ficar único e não correr o risco de cadastrarem o equipamento e colocar o mesmo token, e cadastrar 2 vezes. tentei colocar como chave UNIQUE na tabela do sqlserver mas não deu certo, então quero fazer por código mesmo

 

 

PS: tentei fazer assim, o maximo que minha lógica alcançou e não deu

 

 

switch ($acao) {
case 'add':


$id_equipamento   =$_POST["id_equipamento"];
$quantidade       =$_POST["quantidade"]?$_POST["quantidade"]:1;
$id_unidade       =$_POST["id_unidade"];
$id_rua           =$_POST["id_rua"];
$token_saida      =$_POST['token_saida'];
$dt = date("d/m/Y H:i:s");




$sql="select * from entrada WHERE token_saida = '$token_saida'");


if(($con->exec($sql)>0){
echo 'Esse token de saída já existe';
}else{
$sql = "insert into entrada 
(id_equipamento, quantidade, dt_entrada, id_usuario, id_unidade, id_rua, token_saida)
values ('$id_equipamento','$quantidade', '$dt', 1, '$id_unidade', '$id_rua', '$token_saida')";




}


if ($con->exec($sql)) {
$msg = "Sucesso";
}




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


die;
break;

Compartilhar este post


Link para o post
Compartilhar em outros sites


$teste = $con->query("SELECT id_equipamento WHERE token_saida = '$token_saida' LIMIT 1");

 

if($teste->rowCount() != '1'){

//Nada encontrado...

}

Compartilhar este post


Link para o post
Compartilhar em outros sites
$teste = $con->query("SELECT id_equipamento WHERE token_saida = '$token_saida' LIMIT 1");

if($teste->rowCount() != '1'){
//Nada encontrado...
}

 

 

Opa meu querido, obrigado pela ajuda... mas tipo: a tela fica branca , some a página. o que pode ser?

 

 

deixei assim:

 

$teste = $con->query("SELECT id_equipamento WHERE token_saida = '$token_saida' LIMIT 1");


if($teste->rowCount() != '1'){
//Nada encontrado...
$sql = "insert into entrada 
(id_equipamento, quantidade, dt_entrada, id_usuario, id_unidade, id_rua, token_saida)
values ('$id_equipamento','$quantidade', '$dt', 1, '$id_unidade', '$id_rua', '$token_saida')";
#die($sql); 


}


if ($con->exec($sql)) {
$msg = "Sucesso";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, consegui resolver!!! pegando a lógica do ESerra, mudei algumas coisas e ficou assim:

$tipo_msg = ""; 


if ($token_saida == "") { 


$consultaEquip = $con->prepare("SELECT patrimonio FROM equipamento WHERE id = '$id_equipamento' ");
$consultaEquip->execute();
$res = $consultaEquip->fetch(PDO::FETCH_ASSOC);


if ($res["patrimonio"] == "S")  {


if (posicaoEstoque($id_equipamento) > 0 ) {


$msg = "Patrimônio já foi dado entrada.";
$tipo_msg = "erro";


} . . .

Obrigado Pessoal !!!

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.