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

Problema Com If Else


sansoftware

Pergunta

Bom dia!

Estou com um problema em usar IF e ELSE, estou tentando fazer um sistema para reserva de video locadora, um usuário faz uma reserva de um filme em um determinado dia e hora, não posso deixar que outro usuário faça a reserva do mesmo filme no mesmo dia! Mas não estou conseguindo.

Não posso deixar que um filme seja reservado duas vezes no mesmo dia!

O código abaixa está inserindo pedido em dias diferentes no entanto está dizendo ao cliente que não pode ser reservado!

Por favor me ajudem!

<?php

    session_start();

    //Verifica se há dados ativos na sessão
    if(empty($_SESSION["id_usuario"]) || empty($_SESSION["nome"])|| empty($_SESSION["login"]))
    {

echo "<center><br><br><br><br><br><br><br> ";

echo "<img src=\"../img/error_login.gif\" width=\"221\" height=\"174\" border=\"0\" /> </center>";
        echo "<meta http-equiv='refresh' content='4;URL=index.php'>";
    }else {
function valida_data($data)
{
    $data = split("[-,/]", $data);
    if(!checkdate($data[1], $data[0], $data[2]) and !checkdate($data[1], $data[2], $data[0])) {
        return false;
    }
    return true;
}  
function converte_data($data)
{
    if(valida_data($data)) {
        return implode(!strstr($data, '/') ? "/" : "-", array_reverse(explode(!strstr($data, '/') ? "-" : "/", $data)));
    }    
} 
    
$data = (converte_data($_POST["data"]));
 $_POST["hora"];
 $idtitulo = $_POST["id_titulo"];
 $titulo = $_POST["titulo"];
 $nome = $_SESSION["nome"];
 $email = $_SESSION["login"];
 $id_cliente = $_SESSION["id_usuario"];
 $fone = $_SESSION["foneresid"];

 $conn = mysql_connect("localhost","root","") or die ("Erro ao conectar ao banco de dados!");
 $db = mysql_select_db("virtual") or die ("Erro ao conectar a tabela");
$verif = "SELECT id FROM reservas WHERE idtitulo = '$idtitulo' AND data = '$data'";
$resultado = mysql_query($verif,$conn) or die("erro conn 2."); 
$retorno = mysql_num_rows($resultado);
if($retorno == 0){ 
$sql = "INSERT INTO reservas(id_cliente,cliente,email,idtitulo,titulo,telefone,data,hora) VALUES 
('$id_cliente','$nome','$email','$idtitulo','$titulo','$fone','$data','$hora')";
$result2=mysql_query($sql) or die(mysql_error());
mysql_close();
?>
<body bgcolor="#CBD7DC">
<table width="75%" border="0" align="center">
  <tr>
    <td> </td>
  </tr>

  <tr> 
    <td bgcolor="#FFFFFF" class="texto1">


<br>
<br>
<br>
<br>
<br>


<center>
  <font size="2" face="Tahoma"><strong>Sr(a).: <?php echo $_SESSION["nome"]; ?></strong> sua escolheu foi o título <b><?php echo $titulo; ?></b>,<br> seu pedido de <strong>reserva</strong> foi cadastrado com sucesso! <br>
O envio do Tìtulo escolhido será imediato, após a chegada do mesmo.<br>
Enquanto isso aproveite e escolha outros títulos.<br><br><br>

</font> 
</center>
<br>


<br>



<br>
<br>
<br>
      <!---teste--->
     <center>
      <a href="principal.php"><font size="2" face="Tahoma">Voltar a p&aacutegina principal</fonte></a> 
     </center>
      <!--teste--->

<br>
<br>

</td>
  </tr>
  <tr>
    <td><div align="center"><br>
        <font size="1" face="Tahoma"><strong><br>
        © 2007</strong>  - Informática desenvolvimento.</font><br>

      </div></td>
  </tr>
</table>
<div align="center"></div><?php
}
else{ ?>
<body bgcolor="#CBD7DC">
<table width="75%" border="0" align="center">
  <tr>
    <td> </td>
  </tr>

  <tr> 
    <td bgcolor="#FFFFFF" class="texto1">


<br>
<br>
<br>
<br>
<br>


<center>
  <font size="2" face="Tahoma"><strong>Sr(a).: "<?php echo $_SESSION["nome"];?>"</strong> sua escolheu foi o título <strong>"<?php echo $titulo;?>"</strong>.<br> <br>
<strong>Desculpe-nos mas seu pedido não pode ser finalizado!</strong><br>
O Tìtulo escolhido já se encontrar reservado para a DATA escolhida!<br>
Caso interessar Sr(a) poderá escolher outro título ou outra Data. <br><br><br>

</font>
</center>
<br>


<br>



<br>
<br>
<br>
      <!---teste--->
     <center>
      <a href="principal.php"><font size="2" face="Tahoma">Voltar a p&aacutegina principal</fonte></a>    
      <a href="java script:history.go(-1)">Escolher outra DATA</a>
     </center>
      <!--teste--->

<br>
<br>

</td>
  </tr>
  <tr>
    <td><div align="center"><br>
        <font size="1" face="Tahoma"><strong><br>
        © 2007</strong>  - Informática desenvolvimento.</font><br>

      </div></td>
  </tr>
</table>
<div align="center"></div>
<?php
}

}
?>

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Nessa parte do código:

if($retorno == 0){
$sql = "INSERT INTO reservas(id_cliente,cliente,email,idtitulo,titulo,telefone,data,hora) VALUES
('$id_cliente','$nome','$email','$idtitulo','$titulo','$fone','$data','$hora')";
$result2=mysql_query($sql) or die(mysql_error());
mysql_close();
?>
Eu faria diferente... deixaria assim:
if($retorno == 0){
$sql = "INSERT INTO reservas(id_cliente,cliente,email,idtitulo,titulo,telefone,data,hora) VALUES
('$id_cliente','$nome','$email','$idtitulo','$titulo','$fone','$data','$hora')";
$result2=mysql_query($sql) or die(mysql_error());
mysql_close();
$mensagem = "<center>
  <font size=\"2\" face=\"Tahoma\"><strong>Sr(a).:".$_SESSION["nome"]."</strong> sua escolheu foi o título $titulo</b>,<br> seu pedido de <strong>reserva</strong> foi cadastrado com sucesso! <br>
O envio do Tìtulo escolhido será imediato, após a chegada do mesmo.<br>
Enquanto isso aproveite e escolha outros títulos.<br><br><br>";
}else{
$mensagem = "<center>
  <font size=\"2\" face=\"Tahoma\"><strong>Sr(a).:".$_SESSION["nome"]."</strong> sua escolheu foi o título <strong>$titulo</strong>.<br> <br>
<strong>Desculpe-nos mas seu pedido não pode ser finalizado!</strong><br>
O Tìtulo escolhido já se encontrar reservado para a DATA escolhida!<br>
Caso interessar Sr(a) poderá escolher outro título ou outra Data. <br><br><br>";
}
?>

Ai na parte do HTML, em vez de ter que ficar chamando 2 mensagem diferentes, simplesmente daria um echo na variável $mensagem e ela já traria o resultado... isso fará com que seu HTML fique menor também...

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,3k
    • Posts
      652,6k
×
×
  • Criar Novo...