Ir para conteúdo
adriano.eurich

Mudar a cor do botão ao clicar e mostrar mensagem ao desclicar !

Recommended Posts

Olá, gostaria de fazer o seguinte tenho um código que tem vários botões, que quando clicado redireciona a outra pagina de formulário, gostaria de deixar esses botões ao clicar mudasse pra cor vermelha por exemplo e quando eu clicasse novamente voltasse para cor normal dele e desse uma caixa de mensagem !

Em anexo as telas !

 

 

Tela sacola.php

<?php session_start();
include_once 'includes/header.inc.php';
include_once 'includes/menu.inc.php';
?>

<!-- Formulário de Cadastro Cliente -->
        <div class="row container">
            <p>&nbsp;</p>
                <fieldset class="formulario" style="padding: 5px">
                    <legend><img src="imagens/sacola.png" alt="[imagem]"style="width:80px; height:45px"></legend>
                    <br>
                    
                    <?php
                        if(isset($_SESSION['msg'])):
                            echo $_SESSION['msg'];
                            session_unset();
                        endif;
                    ?>
                    
                    <!-- Botões -->
                    <div class="input-field col s12">
                        <div class="linha1">
                            <button id="botao" data-numero="01"class="btn blue" style="width:120px; height:37px">01</button>
                            <button id="botao" data-numero="02"class="btn blue" style="width:120px; height:37px">02</button>
                            <button id="botao" data-numero="03"class="btn blue" style="width:120px; height:37px">03</button>
                            <button id="botao" data-numero="04"class="btn blue" style="width:120px; height:37px">04</button>
                            <button id="botao" data-numero="05"class="btn blue" style="width:120px; height:37px">05</button>                
                        </div>
                        
                        <div class="linha2">
                            <button id="botao" data-numero="06"class="btn blue" style="width:120px; height:37px">06</button>
                            <button id="botao" data-numero="07"class="btn blue" style="width:120px; height:37px">07</button>
                            <button id="botao" data-numero="08"class="btn blue" style="width:120px; height:37px">08</button>
                            <button id="botao" data-numero="09"class="btn blue" style="width:120px; height:37px">09</button>
                            <button id="botao" data-numero="10"class="btn blue" style="width:120px; height:37px">10</button>          
                        </div>
                        
                        <div class="linha3">
                            <button id="botao" data-numero="11"class="btn blue" style="width:120px; height:37px">11</button>
                            <button id="botao" data-numero="12"class="btn blue" style="width:120px; height:37px">12</button>
                            <button id="botao" data-numero="13"class="btn blue" style="width:120px; height:37px">13</button>
                            <button id="botao" data-numero="14"class="btn blue" style="width:120px; height:37px">14</button>
                            <button id="botao" data-numero="15"class="btn blue" style="width:120px; height:37px">15</button>          
                        </div>
                        
                        <div class="linha4">
                            <button id="botao" data-numero="16"class="btn blue" style="width:120px; height:37px">16</button>
                            <button id="botao" data-numero="17"class="btn blue" style="width:120px; height:37px">17</button>
                            <button id="botao" data-numero="18"class="btn blue" style="width:120px; height:37px">18</button>
                            <button id="botao" data-numero="19"class="btn blue" style="width:120px; height:37px">19</button>
                            <button id="botao" data-numero="20"class="btn blue" style="width:120px; height:37px">20</button>          
                        </div>
                    </div>
                    
                </fieldset>
        </div>
        
        
<?php include_once 'includes/footer.inc.php';?>
<?php include_once 'includes/script.inc.php'; 

 

 

Tela emprestimo.php

 

<?php session_start();
include_once 'includes/header.inc.php';
include_once 'includes/menu.inc.php';
?>

<!-- Formulário de Cadastro Cliente -->
        <div class="row container">
            <p>&nbsp;</p>
            <form action="banco_de_dados/create.php" method="post" class="col s12">
                <fieldset class="formulario" style="padding: 5px">
                    <legend><img src="imagens/sacola.png" alt="[imagem]"style="width:80px; height:45px"></legend>
                    <br>
                    
                    <?php
                        if(isset($_SESSION['msg'])):
                            echo $_SESSION['msg'];
                            session_unset();
                        endif;
                    ?>
                    
                    <!-- Campo Nome -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">account_circle</i>
                        <input type="text" name="nome" id="nome" maxlength="40" required autofocus>
                        <label for="nome">Nome</label>
                    </div>
                                        
                    <!-- Campo Telefone -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">phone</i>
                        <input type="text" name="telefone" id="telefone" maxlength="13" required>
                        <label for="telefone">Telefone</label>
                    </div>
                    
                   <!-- Campo Cpf -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">credit_card</i>
                        <input type="text" name="cpf" id="cpf" maxlength="14" required>
                        <label for="cpf"> CPF</label>
                    </div>
                   
                    <!-- Campo Sacola -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">mode_edit</i>
                        <label>Numero da Sacola</label>
                        <input type="text" value="<?php echo isset($_GET['numeroSacola']) ? $_GET['numeroSacola'] : null; ?>">
                    </div>

                    <div class="input-field col s12">
                        <i class="material-icons prefix">timelapse</i>
                            <select>
                                <option value="" disabled selected>Período</option>
                                <option value="1">Manhã</option>
                                <option value="2">Tarde</option>
                                <option value="3">Noite</option>
                            </select>
                    </div>
                   
                    <!-- Botões -->
                    <div class="input-field col s12">
                        <input type="submit"style="width:120px; height:37px" value="Empréstimo" class="btn blue">
                        <input type="submit"style="width:120px; height:37px" value="Devolução" class="btn red">
                        <input type="reset" style="width:120px; height:37px" value="limpar" class="btn lilac">
                    </div>
                    
                </fieldset>
            </form>
        </div> 

<?php include_once 'includes/script.inc.php';?>

 

 

Código javascript

 

<!-- Arquivos Jquery e JavaScrip -->
        <script type="text/javascript" src="materialize/js/jquery-3.3.1.min.js"></script>
        <script type="text/javascript" src="materialize/js/materialize.min.js"></script>
        <script type="text/javascript" src="materialize/js/jquery.mask.min"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.maskedinput/1.3.1/jquery.maskedinput.min.js"></script>
        
        <!-- Inicialização Jquery -->
        <script type="text/javascript">
            $(document).ready(function(){
               $('.sidenav').sidenav();
               $('.dropdown-trigger').dropdown();
            });   
        </script>
 
        <!-- Inicialização Jquery Mascaras -->
        <script type="text/javascript"> 
            jQuery.noConflict();
            jQuery(function($){
               //$("#datanasc").mask("99/99/9999");
               //$("#telefone").mask("(099)99999-9999");
               $("#cpf").mask("999.999.999-99");
               $("#cpfDono").mask("999.999.999-99"); 
            });
         
        
          document.addEventListener('DOMContentLoaded', function() {
            var elems = document.querySelectorAll('select');
            var instances = M.FormSelect.init(elems, options);
            });

            // Or with jQuery

            $(document).ready(function(){
              $('select').formSelect();
            });
        </script>
        
        <script>
            //pega todos os botoes
            const botoes = document.querySelectorAll('#botao');

            for (let i = 0; i < botoes.length; i++) {
                //escuta o evento de click em cada botao
                botoes[i].addEventListener('click', function (e) {
                    //pega o numero do botao clicado
                    const numeroSacola = this.dataset.numero;

                    //redireciona para emprestimos.php passando o numero do botao
                    window.location.href = `emprestimo.php?numeroSacola=${numeroSacola}`;
                });
            }
        </script>
        
    </body>
</html>

 

1.PNG

2.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Veja se o código abaixo atende ao que você quer.

 

Arquivo INDEX.PHP

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Valida Checkbox</title>
<style>
    button{
        border-radius: 12px;
        padding: 35px 50px;
        font-weight: bolder;
        color: #fff;
    }
</style>

<script type="text/javascript">
function mudaCor(el){
    var cor = el.style.backgroundColor;
    if(cor == 'rgb(0, 0, 255)') {
        el.style.backgroundColor = '#FF0000';
    } else {
        el.style.backgroundColor = '#0000FF';
    }
}
</script>
<!-- Formulário de Cadastro Cliente -->
<div class="row container">
    <p>&nbsp;</p>
    <fieldset class="formulario" style="padding: 5px">
    <legend><img src="imagens/sacola.png" alt="[imagem]"style="width:80px; height:45px"></legend>
    <br>
    <!-- Botões -->
    <div class="input-field col s12">
        <div class="linha1">
            <button id="botao" data-numero="01" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">01</button>
            <button id="botao" data-numero="02" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">02</button>
            <button id="botao" data-numero="03" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">03</button>
            <button id="botao" data-numero="04" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">04</button>
            <button id="botao" data-numero="05" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">05</button
        </div>
        <div class="linha2">
            <button id="botao" data-numero="06"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">06</button>
            <button id="botao" data-numero="07"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">07</button>
            <button id="botao" data-numero="08"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">08</button>
            <button id="botao" data-numero="09"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">09</button>
            <button id="botao" data-numero="10"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">10</button>          
        </div>
        <div class="linha3">
            <button id="botao" data-numero="11"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">11</button>
            <button id="botao" data-numero="12"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">12</button>
            <button id="botao" data-numero="13"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">13</button>
            <button id="botao" data-numero="14"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">14</button>
            <button id="botao" data-numero="15"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">15</button>          
        </div>
        <div class="linha4">
            <button id="botao" data-numero="16"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">16</button>
            <button id="botao" data-numero="17"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">17</button>
            <button id="botao" data-numero="18"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">18</button>
            <button id="botao" data-numero="19"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">19</button>
            <button id="botao" data-numero="20"class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)">20</button>          
        </div>
    </div>
    </fieldset>
</div>
</body>
</html>

 

Espero ter ajudado de alguma forma.

 

Att.

Felipe Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

 Oi Felipe Coutinho, muito obrigado pela ajuda, era isso mesmo, porem me deparei com outro problema, não sei se estou fazendo da forma correta, estou começando agora, mas minha ideia era assim quando clicado em algum botão ele mudasse de cor e redirecionasse para outra pagina, isso acontece, porem quando volto pra pagina das sacola ele  não esta com a cor clicada, não sei como faria isso , a ideia era bolar um sistema de empréstimo de sacola deve ter formas mais correta de fazer isso, mas fui mexendo e saindo isso kkkkk .

Na tela de sacola onde mostra os números de todas as sacolas ao clicar era pra mudar a cor e redirecionar a pagina de empréstimo onde é digitado os dados do cliente ai clicaria no botão emprestar e o formulário iria pro banco e  redirecionaria a pagina de sacola, mas deveria estar em vermelho para sinalizar que está emprestado, quado eu clicasse novamente daria um mensagem dizendo que foi devolvida e retornaria a cor normal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Existem muitos meios para se fazer as coisas.

 

O que você pode fazer é o seguinte, usando o PHP e um Banco De Dados para armazenas os empréstimos, você precisa gravar o número da "SACOLA" no banco de dados vinculando com a operação.

 

Exemplo

 

Cliquei na SACOLA 1, logo vou fazer um empréstimo usando a SACOLA 1.

Fiz o empréstimo de R$ 1.000,00, você claro, vai guardar essa informação em uma tabela eu imagino.

 

Então você tem 1 registro de Empréstimo feito pela Sacola 1.

 

Na sua página de sacola, para cada BOTÃO você pode fazer um acesso a tabela onde guardou o empréstimo procurando pelo ID da SACOLA.

 

Se ele estiver lá você manda imprimir o botão com a cor vermelha, caso não exista você manda imprimir o botão com a cor azul.

Fazendo isso você vai ter AO CARREGAR A PÁGINA SACOLA os botões com as respectivas cores, vermelha com empréstimo, azul libre para realizar um empréstimo e você ainda pode usar o Javascript que passei, clicando no botão fica vermelho se estiver azul ou fica azul se estiver vermelho.

Eu não sei qual é a sua regra do negócio, só estou dando uma idéia do que você pode fazer.

Qualquer coisa explique com detalhes o comportamento das telas que vemos como podemos ajudar.

 

Espero ter ajudado de alguma forma.

 

Att.

Felipe Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

É mais o menos isso, vou guardar no banco o formulário da pagina emprestimo.php na pagina sacola.php tem todos os botões que representam as sacolas de 1 a 20, quando clico no batão 1 por exemplo ele redireciona a pagina emprestimo.php que é meu formulário e também ele já me traz o numero da sacola ou seja do botão que cliquei no caso o numero 1, e preenche ja no formulário ai eu digitaria os dados do cliente e enviaria ao banco, na hora de devolver eu  não quero que ele delete do banco nem mude nada apenas mudasse a cor do botão e desse a mensagem de devolvido. A parte do banco e tal eu já sei, só queria ver essa parte do botão continuasse da cor vermelha que seria emprestado mesmo eu mudando de pagina, e desse a mensagem de devolvido quando clicado novamente 

Quando clicasse no botão emprestar da pagina emprestimo.php envia ao banco e redireciona novamente a pagina sacola.php

 

No caso da pagina emprestimo.php, pode desconsiderar o botão devolução, pois não iria usar ele.

 

 

Pagina sacola.php

 

<?php session_start();
include_once 'includes/header.inc.php';
include_once 'includes/menu.inc.php';
?>

<!-- Formulário de Cadastro Cliente -->
        <div class="row container">
            <p>&nbsp;</p>
                <fieldset class="formulario" style="padding: 5px; width: 650px;">
                    <legend><img src="imagens/sacola.png" alt="[imagem]"style="width:50px; height:45px"></legend>
                    <br>
                    
                    <?php
                        if(isset($_SESSION['msg'])):
                            echo $_SESSION['msg'];
                            session_unset();
                        endif;
                    ?>
                    
                    <!-- Botões -->
                    <div class="input-field col s12">
                        <div class="linha1">
                            <button id="botao" data-numero="01"class="button" onclick="mudaCor(this)">01</button>
                            <button id="botao" data-numero="02"class="button" onclick="mudaCor(this)">02</button>
                            <button id="botao" data-numero="03"class="button" onclick="mudaCor(this)">03</button>
                            <button id="botao" data-numero="04"class="button" onclick="mudaCor(this)">04</button>
                            <button id="botao" data-numero="05"class="button" onclick="mudaCor(this)">05</button>                
                        </div>
                        
                        <div class="linha2">
                            <button id="botao" data-numero="06"class="button" onclick="mudaCor(this)">06</button>
                            <button id="botao" data-numero="07"class="button" onclick="mudaCor(this)">07</button>
                            <button id="botao" data-numero="08"class="button" onclick="mudaCor(this)">08</button>
                            <button id="botao" data-numero="09"class="button" onclick="mudaCor(this)">09</button>
                            <button id="botao" data-numero="10"class="button" onclick="mudaCor(this)">10</button>          
                        </div>
                        
                        <div class="linha3">
                            <button id="botao" data-numero="11"class="button" onclick="mudaCor(this)">11</button>
                            <button id="botao" data-numero="12"class="button" onclick="mudaCor(this)">12</button>
                            <button id="botao" data-numero="13"class="button" onclick="mudaCor(this)">13</button>
                            <button id="botao" data-numero="14"class="button" onclick="mudaCor(this)">14</button>
                            <button id="botao" data-numero="15"class="button" onclick="mudaCor(this)">15</button>          
                        </div>
                        
                        <div class="linha4">
                            <button id="botao" data-numero="16"class="button" onclick="mudaCor(this)">16</button>
                            <button id="botao" data-numero="17"class="button" onclick="mudaCor(this)">17</button>
                            <button id="botao" data-numero="18"class="button" onclick="mudaCor(this)">18</button>
                            <button id="botao" data-numero="19"class="button" onclick="mudaCor(this)">19</button>
                            <button id="botao" data-numero="20"class="button" onclick="mudaCor(this)">20</button>          
                        </div>
                    </div>
                    
                </fieldset>
        </div>
        
        
<?php include_once 'includes/footer.inc.php';?>
<?php include_once 'includes/script.inc.php'; 

 

Pagina emprestimo.php

<?php session_start();
include_once 'includes/header.inc.php';
include_once 'includes/menu.inc.php';
?>

<!-- Formulário de Cadastro Cliente -->
        <div class="row container">
            <p>&nbsp;</p>
            <form action="banco_de_dados/create.php" method="post" class="col s12">
                <fieldset class="formulario" style="padding: 5px">
                    <legend><img src="imagens/sacola.png" alt="[imagem]"style="width:80px; height:45px"></legend>
                    <br>
                    
                    <?php
                        if(isset($_SESSION['msg'])):
                            echo $_SESSION['msg'];
                            session_unset();
                        endif;
                    ?>
                    
                    <!-- Campo Nome -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">account_circle</i>
                        <input type="text" name="nome" id="nome" maxlength="40" required autofocus>
                        <label for="nome">Nome</label>
                    </div>
                                        
                    <!-- Campo Telefone -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">phone</i>
                        <input type="text" name="telefone" id="telefone" maxlength="13" required>
                        <label for="telefone">Telefone</label>
                    </div>
                    
                   <!-- Campo Cpf -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">credit_card</i>
                        <input type="text" name="cpf" id="cpf" maxlength="14" required>
                        <label for="cpf"> CPF</label>
                    </div>
                   
                    <!-- Campo Sacola -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">mode_edit</i>
                        <label>Numero da Sacola</label>
                        <input type="text" value="<?php echo isset($_GET['numeroSacola']) ? $_GET['numeroSacola'] : null; ?>">
                    </div>

                    <div class="input-field col s12">
                        <i class="material-icons prefix">timelapse</i>
                            <select>
                                <option value="" disabled selected>Período</option>
                                <option value="1">Manhã</option>
                                <option value="2">Tarde</option>
                                <option value="3">Noite</option>
                            </select>
                    </div>
                   
                    <!-- Botões -->
                    <div class="input-field col s12">
                        <input type="submit"style="width:120px; height:37px" value="Empréstimo" class="btn blue">
                        <input type="submit"style="width:120px; height:37px" value="Devolução" class="btn red">
                        <input type="reset" style="width:120px; height:37px" value="limpar" class="btn lilac">
                    </div>
                    
                </fieldset>
            </form>
        </div> 

<?php include_once 'includes/script.inc.php';?>

Script das paginas

 

        <!-- Arquivos Jquery e JavaScrip -->
        <script type="text/javascript" src="materialize/js/jquery-3.3.1.min.js"></script>
        <script type="text/javascript" src="materialize/js/materialize.min.js"></script>
        <script type="text/javascript" src="materialize/js/jquery.mask.min"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.maskedinput/1.3.1/jquery.maskedinput.min.js"></script>
        
        <!-- Inicialização Jquery -->
        <script type="text/javascript">
            $(document).ready(function(){
               $('.sidenav').sidenav();
               $('.dropdown-trigger').dropdown();
            });   
        </script>
 
        <!-- Inicialização Jquery Mascaras -->
        <script type="text/javascript"> 
            jQuery.noConflict();
            jQuery(function($){
               //$("#datanasc").mask("99/99/9999");
               //$("#telefone").mask("(099)99999-9999");
               $("#cpf").mask("999.999.999-99");
               $("#cpfDono").mask("999.999.999-99"); 
            });
         
        
          document.addEventListener('DOMContentLoaded', function() {
            var elems = document.querySelectorAll('select');
            var instances = M.FormSelect.init(elems, options);
            });

            // Or with jQuery

            $(document).ready(function(){
              $('select').formSelect();
            });
        </script>
        
        <script>
            //pega todos os botoes
            const botoes = document.querySelectorAll('#botao');

            for (let i = 0; i < botoes.length; i++) {
                //escuta o evento de click em cada botao
                botoes[i].addEventListener('click', function (e) {
                    //pega o numero do botao clicado
                    const numeroSacola = this.dataset.numero;

                    //redireciona para emprestimos.php passando o numero do botao
                    window.location.href = `emprestimo.php?numeroSacola=${numeroSacola}`;
                });
            }
        </script>
        
        
        <script>
            //muda cor do botão
            function mudaCor(el){
                var cor = el.style.backgroundColor;
                    if(cor == 'rgb(0, 0, 255)') {
                    el.style.backgroundColor = '#FF0000';
                    } else {
                    el.style.backgroundColor = '#0000FF';
                    }
            }
        </script>       
    </body>
</html>

Css das paginas

 

/* 
    Created on : 31/03/2019, 16:16:55
    Author     : Adriano
*/

.footer {
   position: fixed;
   left: -15px;
   bottom: -15px;
   width: 100%;
   background-color: #790f04;
   color: white;
   text-align: center;
}

.row container{
    margin-bottom: 5px;
}

.linha1{
    padding: 3px;
    margin-left: 70px;
}

.linha2{
    padding: 3px;
    margin-left: 70px;
}

.linha3{
    padding: 3px;
    margin-left: 70px;
}

.linha4{
    padding: 3px;
    margin-left: 70px;
}

.button {
    background-color: #4CAF50;
    border: none;
    color: white;
    padding: 20px 35px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 18px;
    margin: 4px 4px;
    cursor: pointer;
}

 

sacola.PNG

emprestimo.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Perfeito Adriano.

 

Então faz assim, na tabela você precisa gravar o numero da sacola em um campo e eu te recomendo criar também um campo de situação, tipo 1 = Pago 2 = Pendente.

 

Digamos que sua tabela fique assim:

TB_EMPRESTIMO

REG.    NOME.    TELEFONE.            CPF.                       SACOLA.    PERIODO.          SITUACAO.    VALOR

1.         Felipe.     13 99123-1234.    681.722.820-44.  1                   2020/12/31.    2                      1000

 

Monte essa tabela que passei de exemplo e faça o código abaixo e você vera o resultado.

<?php

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

$enddb = "localhost:3306"; //Localhost do seu Banco de Dados
$user = "root"; //Usuário de acesso ao Banco de Dados
$pass = ""; //Senha do Usuário de acesso ao Banco de Dados
$database = "db_teste"; //Nome da sua DataBase

 

$conndb = mysql_connect($enddb,$user,$pass);

if(!$conndb){
       echo "Problemas ao realizar a conexao com o banco de dados (".mysql_error().")";
       exit();
}
mysql_select_db($database,$conndb);
mysql_set_charset('utf8',$conndb);


$i = 1;
while ($i <= 20) {

$sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$i." and SITUACAO = 2";

if ($resultado = mysql_fetch_assoc(mysql_query($sql))) {

?>
     <button id="botao" data-numero="<?php echo $i; ?>" class="btn RED" style="width:120px; height:37px; background-color: #FF0000;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php
} else {
?>
     <button id="botao" data-numero="<?php $i; ?>" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php
}
$i++;
}
?>

 

Você consegue entender o que isso faz?

 

Eu faço um acesso a base de dados buscando pela SACOLA 1 com código de SITUACAO 2 PENDENTE que significa que existe um empréstimo NÃO PAGO FEITO NA SACOLA 1.

Se eu encontrar esse registro na base então eu mando exibir na tela um botão VERMELHO como destacado

Se eu não encontrar esse registro na base, significa que eu não tenho nenhum empréstimo feito para a SACOLA 1 OU que eu realmente não tenho nenhum empréstimo feito PELA SACOLA 1 e neste caso, por eu não encontrar o registro na tabela eu mando exibir na tela um BOTÃO AZUL pelo ELSE.

 

Deu para você entender?

Se precisar de mais alguma ajuda manda ai.

 

:smiley::thumbsup:

 

Espero ter ajudado de alguma forma

 

Att.

Felipe Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Felipe, perai que me enrolei aqui agora rsrsrs, eu tava fazendo a conexão e o create.php assim:

 

conexao.php

<?php
$link = new mysqli('localhost','root','','db_sacola');
$link->set_charset('utf8');

 

create.php

<?php
session_start();
include_once 'conexao.php';

$nome           = $_POST [ 'nome' ];
$telefone       = $_POST [ 'telefone' ];
$cpf            = $_POST [ 'cpf' ];
$numeroSacola   = $_POST [ 'numeroSacola' ];
$periodo        = $_POST [ 'periodo' ];


$queryInsert = $link->query("insert into tb_emprestimo values(default,'$nome','$telefone','$cpf','$numeroSacola','$periodo')");
   $affected_rows = mysqli_affected_rows($link);
    
    if($affected_rows > 0):
        $_SESSION['msg'] = "<p class='center green-text'>".'Cadastro efetuado com Sucesso!'."<br>";
        header("Location: ../sacola.php");
endif;

ele esta dando um erro da linha do $numeroSacola e $periodo ali do post!

 

Notice: Undefined index: numeroSacola in C:\xampp\htdocs\cadastro\banco_de_dados\create.php on line 8

Notice: Undefined index: periodo in C:\xampp\htdocs\cadastro\banco_de_dados\create.php on line 9

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Vou te encaminhar um exemplo simples para você se conectar ao Banco de Dados, fazer um INSERT e um SELECT.

 

Eu tenho o costume de me conectar com o meu Banco de Dados com o exemplo abaixo:

 

mysql_conexao.php

<?php

// Para o charset das páginas

ini_set('default_charset','UTF-8');

 

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

 

// Acesso Local
$conndb = mysql_connect($enddb,$user,$pass);

if(!$conndb){
       echo "Problemas ao realizar a conexao com o banco de dados (".mysql_error().")";
       exit();
}
//Criando comunicação com a BASE DE DADOS do BANCO DE DADOS
mysql_select_db($database,$conndb);
mysql_set_charset('utf8',$conndb);
?>

 

Para o seu INSERT o problema esta na concatenação das suas variáveis do PHP com o comando SQL.

Tenta copiar e colar o código abaixo:

<?php
session_start();
if (!@include_once "mysql_conexao.php" ) {echo "Arquivo: mysql_conexao.php não incluso";}; ?>

$nome           = $_POST [ 'nome' ];
$telefone       = $_POST [ 'telefone' ];
$cpf            = $_POST [ 'cpf' ];
$numeroSacola   = $_POST [ 'numeroSacola' ];
$periodo        = $_POST [ 'periodo' ];    <-- se isso for um campo de data você precisa ver o formato.

Obs.: Geralmente usamos o campo de data no formato dd/mm/aaaa ou 01/01/2019,
mas o banco de dados como o mysql se você declarar um campo como DATE ou DATETIME
o formato dele é aaaa-mm-dd como date e aaaa-mm-dd hh-mm-ss para datetime
Então se o seu campo periodo estiver no formato dd/mm/aaaa você precisa
converter para o formato do banco.
Se você tiver algum problema para isso pode perguntar que eu tenho algumas
soluções de fácil implementação.

$sql = "INSERT INTO TB_EMPRESTIMO 
        VALUES(NULL,'".$nome."',".$telefone.",'".$cpf."', ".$numeroSacola.",'".$periodo."')";
= mysql_query($sql);
    
if(!$insert){
    $_SESSION['msg'] = "<p class='center green-text'>".'Cadastro efetuado com Sucesso!'."<br>";
    header("Location: ../sacola.php");
;

 

Repare bem no comando que ficou dentro da variavel $sql.

Os campos dentro do VALUE, caso sejam campos declarados dentro do CREATE TABLE como numéricos devem ser incluidos sem aspas simples e para variaveis do tipo alphanuméricos, devem ser incluidos com aspas simples.

 

Nome é alphanumérico, então a sintaxe que uso é essa, aspas simples, aspas dupla, ponto, variavel, ponto, aspas duplas e aspas simples.

aspas simples para iniciar uma variável alphanumérica, as aspas duplas representa o fim da STRING texto PHP, o ponto concatena o que esta escrito dentro das aspas duplas antes do ponto, coloca a váriavel php $var e depois coloca um ponto (.) para concatenar com o que vai colocar depois, abre com aspas duplas para digitar o restante da STRING e fecha as aspas simples para dizer que o que está entre elas é um alphanumérico para o banco de dados e depois você fecha as aspas duplas para fechar todo o conteudo da variavel $SQL.

 

O comando que você fez, interpretado pelo seu SQL foi o seguinte:

"insert into tb_emprestimo values(default,'$nome','$telefone','$cpf','$numeroSacola','$periodo')"

 

E o comando que eu escrevi faz:

"insert into tb_emprestimo values(NULL, 'Adriano', 0551132321520, ''681.722.820-44', 1, '2019-07-29')"

 

Repare que no meu código os campos Número e NumeroSacola estão sem aspas simples, o que significa que são campos Numéricos e os que estão com aspas simples são campos Alphanuméricos.

 

Provavelmente no seu código os erros apontados está no numeroSacola para ser inserido no banco de dados, acredito eu que este campo no seu banco de dados seja um campo numérico como INT ou FLOATl e você tendou inserir a palavra "$numeroSacola" no campo e isso gerou o apontamento, já o erro do periodo acredito eu que o formato do campo, se for DATE precisa respeitar o formato aaaa-mm-dd e você tentou inserir a palabra "$periodo".

 

Espero ter ajudado.

 

Att.

Felipe Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 29/07/2019 at 08:34, Felipe Guedes Coutinho disse:

adriano.eurich

Vou te encaminhar um exemplo simples para você se conectar ao Banco de Dados, fazer um INSERT e um SELECT.

 

Eu tenho o costume de me conectar com o meu Banco de Dados com o exemplo abaixo:

 

mysql_conexao.php

<?php

// Para o charset das páginas

ini_set('default_charset','UTF-8');

 

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

 

// Acesso Local
$conndb = mysql_connect($enddb,$user,$pass);

if(!$conndb){
       echo "Problemas ao realizar a conexao com o banco de dados (".mysql_error().")";
       exit();
}
//Criando comunicação com a BASE DE DADOS do BANCO DE DADOS
mysql_select_db($database,$conndb);
mysql_set_charset('utf8',$conndb);
?>

 

Para o seu INSERT o problema esta na concatenação das suas variáveis do PHP com o comando SQL.

Tenta copiar e colar o código abaixo:


<?php
session_start();
if (!@include_once "mysql_conexao.php" ) {echo "Arquivo: mysql_conexao.php não incluso";}; ?>

$nome           = $_POST [ 'nome' ];
$telefone       = $_POST [ 'telefone' ];
$cpf            = $_POST [ 'cpf' ];
$numeroSacola   = $_POST [ 'numeroSacola' ];
$periodo        = $_POST [ 'periodo' ];    <-- se isso for um campo de data você precisa ver o formato.

Obs.: Geralmente usamos o campo de data no formato dd/mm/aaaa ou 01/01/2019,
mas o banco de dados como o mysql se você declarar um campo como DATE ou DATETIME
o formato dele é aaaa-mm-dd como date e aaaa-mm-dd hh-mm-ss para datetime
Então se o seu campo periodo estiver no formato dd/mm/aaaa você precisa
converter para o formato do banco.
Se você tiver algum problema para isso pode perguntar que eu tenho algumas
soluções de fácil implementação.

$sql = "INSERT INTO TB_EMPRESTIMO 
        VALUES(NULL,'".$nome."',".$telefone.",'".$cpf."', ".$numeroSacola.",'".$periodo."')";
= mysql_query($sql);
    
if(!$insert){
    $_SESSION['msg'] = "<p class='center green-text'>".'Cadastro efetuado com Sucesso!'."<br>";
    header("Location: ../sacola.php");
;

 

Repare bem no comando que ficou dentro da variavel $sql.

Os campos dentro do VALUE, caso sejam campos declarados dentro do CREATE TABLE como numéricos devem ser incluidos sem aspas simples e para variaveis do tipo alphanuméricos, devem ser incluidos com aspas simples.

 

Nome é alphanumérico, então a sintaxe que uso é essa, aspas simples, aspas dupla, ponto, variavel, ponto, aspas duplas e aspas simples.

aspas simples para iniciar uma variável alphanumérica, as aspas duplas representa o fim da STRING texto PHP, o ponto concatena o que esta escrito dentro das aspas duplas antes do ponto, coloca a váriavel php $var e depois coloca um ponto (.) para concatenar com o que vai colocar depois, abre com aspas duplas para digitar o restante da STRING e fecha as aspas simples para dizer que o que está entre elas é um alphanumérico para o banco de dados e depois você fecha as aspas duplas para fechar todo o conteudo da variavel $SQL.

 

O comando que você fez, interpretado pelo seu SQL foi o seguinte:

"insert into tb_emprestimo values(default,'$nome','$telefone','$cpf','$numeroSacola','$periodo')"

 

E o comando que eu escrevi faz:

"insert into tb_emprestimo values(NULL, 'Adriano', 0551132321520, ''681.722.820-44', 1, '2019-07-29')"

 

Repare que no meu código os campos Número e NumeroSacola estão sem aspas simples, o que significa que são campos Numéricos e os que estão com aspas simples são campos Alphanuméricos.

 

Provavelmente no seu código os erros apontados está no numeroSacola para ser inserido no banco de dados, acredito eu que este campo no seu banco de dados seja um campo numérico como INT ou FLOATl e você tendou inserir a palavra "$numeroSacola" no campo e isso gerou o apontamento, já o erro do periodo acredito eu que o formato do campo, se for DATE precisa respeitar o formato aaaa-mm-dd e você tentou inserir a palabra "$periodo".

 

Espero ter ajudado.

 

Att.

Felipe Coutinho

Estou quase conseguindo rsrsr, falta 2 campos apenas, fiz a conexão com banco deu certo enviou os campos menos o campo sacola que é o numero da sacola e o campo situação ele da um erro quando usei o código que você passou, o campo numero da sacola ele passa o valor 0 para o banco, vou postar o código e o print do banco. 

 

 

conexao.php

A conexão da certo e insere os dados menos sacola e situação, se eu coloco o código de mudar a situação junto na conexao.php ele da esse erro no print em anexo

<?php
$link = new mysqli('localhost','root','','db_sacola');
$link->set_charset('utf8');


// Código para mudar a situação da sacola 
$i = 1;
while ($i <= 20) {

$sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$i." and SITUACAO = 2";

if ($resultado = mysql_fetch_assoc(mysql_query($sql))) {

?>
     <button id="botao" data-numero="<?php echo $i; ?>" class="btn RED" style="width:120px; height:37px; background-color: #FF0000;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php
} else {
?>
     <button id="botao" data-numero="<?php $i; ?>" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php
}
$i++;
}
?>

emprestimo.php

 

                   
                    <!-- Campo Número da Sacola -->
                    <div class="input-field col s12">
                        <i class="material-icons prefix">mode_edit</i>
                        <label>Numero da Sacola</label>
                        <input type="text" value="<?php echo isset($_GET['sacola']) ? $_GET['sacola'] : null; ?>">
                    </div>

create.php

 

<?php
session_start();
include_once 'conexao.php';

$nome           = $_POST [ 'nome' ];
$telefone       = $_POST [ 'telefone' ];
$cpf            = $_POST [ 'cpf' ];
$sacola         = $_POST [ 'sacola' ];
$periodo        = $_POST [ 'periodo' ];
$situacao       = $_POST [ 'situacao' ];


$queryInsert = $link->query("insert into tb_emprestimo values(default,'$nome','$telefone','$cpf','$sacola','$periodo','$situacao')");
   $affected_rows = mysqli_affected_rows($link);
    
    if($affected_rows > 0):
        $_SESSION['msg'] = "<p class='center green-text'>".'Empréstimo efetuado com Sucesso!'."<br>";
        header("Location: ../sacola.php");
endif;

 

bd.PNG

conn.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Existem alguns erros em seu código.

Vamos tentar arrumar todos.

Só para que você entenda, o código abaixo não muda o valor do campo SITUACAO

<?php
$link = new mysqli('localhost','root','','db_sacola');
$link->set_charset('utf8');
// Código para mudar a situação da sacola 
$i = 1;
while ($i <= 20) {
$sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$i." and SITUACAO = 2";
if ($resultado = mysql_fetch_assoc(mysql_query($sql))) {?>
     <button id="botao" data-numero="<?php echo $i; ?>" class="btn RED" style="width:120px; height:37px; background-color: #FF0000;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php } else {?>
     <button id="botao" data-numero="<?php $i; ?>" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php }
$i++;
}?>

Eu recomendo primeiro você criar um arquivo que ira realizar a conexão com o seu Banco De Dados.

E recomendo que o faça assim:

 

conexao.php

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

$enddb = "localhost";    //Localhost do seu Banco de Dados
$user = "root";          //Usuário de acesso ao Banco de Dados
$pass = "";              //Senha do Usuário de acesso ao Banco de Dados
$database = "db_sacola"; //Nome da sua DataBase
 
$conndb = mysql_connect($enddb,$user,$pass);
if(!$conndb){
       echo "Problemas ao realizar a conexao com o banco de dados (".mysql_error().")";
       exit();
}
mysql_select_db($database,$conndb);
mysql_set_charset('utf8',$conndb);
?>

 

Agora vamos aos outros detalhes.

Dentro do seu arquivo SACOLA.PHP você ira trocar todos os "botões" fixos pelos comandos abaixo:

Coloque isso:

<?php

if (!@include_once "conexao.php" ) {echo "Arquivo: conexao.php não incluso";};
$x = 1;
$sacola = 1;
while($x <= 4) {
    echo "<div class='linha".$x."'>";
    $y = 1;
    while ($y <= 5) {
        $sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$sacola." and SITUACAO = 2";
        if($resultset = mysql_fetch_assoc(mysql_query($sql))) {;
            echo "<button id='botao' data-numero='".$sacola."' style='width:120px; height:37px; background-color: #FF0000;'>".$sacola."</button>";
        } else {
            echo "<button id='botao' data-numero='".$sacola."' style='width:120px; height:37px; background-color: #0000FF;'>".$sacola."</button>";
        }
        $sacola = $sacola + 1;
        $y = $y + 1;
    }
    $x = $x + 1;
}
?>

 

No lugar disso:

!-- Botões -->
    <div class="linha1">
        <button id="botao" data-numero="01"class="btn blue" style="width:120px; height:37px">01</button>
        <button id="botao" data-numero="02"class="btn blue" style="width:120px; height:37px">02</button>
        <button id="botao" data-numero="03"class="btn blue" style="width:120px; height:37px">03</button>
        <button id="botao" data-numero="04"class="btn blue" style="width:120px; height:37px">04</button>
        <button id="botao" data-numero="05"class="btn blue" style="width:120px; height:37px">05</button>                
    </div>
    
    <div class="linha2">
        <button id="botao" data-numero="06"class="btn blue" style="width:120px; height:37px">06</button>
        <button id="botao" data-numero="07"class="btn blue" style="width:120px; height:37px">07</button>
        <button id="botao" data-numero="08"class="btn blue" style="width:120px; height:37px">08</button>
        <button id="botao" data-numero="09"class="btn blue" style="width:120px; height:37px">09</button>
        <button id="botao" data-numero="10"class="btn blue" style="width:120px; height:37px">10</button>          
    </div>
    
    <div class="linha3">
        <button id="botao" data-numero="11"class="btn blue" style="width:120px; height:37px">11</button>
        <button id="botao" data-numero="12"class="btn blue" style="width:120px; height:37px">12</button>
        <button id="botao" data-numero="13"class="btn blue" style="width:120px; height:37px">13</button>
        <button id="botao" data-numero="14"class="btn blue" style="width:120px; height:37px">14</button>
        <button id="botao" data-numero="15"class="btn blue" style="width:120px; height:37px">15</button>          
    </div>
    
    <div class="linha4">
        <button id="botao" data-numero="16"class="btn blue" style="width:120px; height:37px">16</button>
        <button id="botao" data-numero="17"class="btn blue" style="width:120px; height:37px">17</button>
        <button id="botao" data-numero="18"class="btn blue" style="width:120px; height:37px">18</button>
        <button id="botao" data-numero="19"class="btn blue" style="width:120px; height:37px">19</button>
        <button id="botao" data-numero="20"class="btn blue" style="width:120px; height:37px">20</button>          
    </div>
</div>

 

O RESULTADO É ISSO:

Se encontrar a sacola na tabela, aparece vermelho, se não encontrar aparece azul

image.png.4b4b656bd2d649b13e4bb7f8630b7077.png

 

Outro detalhe é sobre o seu comando INSERT.

Troque isso:

insert into tb_emprestimo values(default,'$nome','$telefone','$cpf','$sacola','$periodo','$situacao')

Pelo comando abaixo caso os campos SACOLA e SITUACAO no seu banco de dados sejam NUMÉRICOS (INT ou FLOAT);

insert into tb_emprestimo values(default,'".$nome."','".$telefone."','".$cpf."',".$sacola.",'".$periodo."',".$situacao.")

Eu fiz uma explicação do porque em um POST mas você não deu atenção e o erro pode estar na clausula SQL que você esta gerando.

 

Acho que com esses ajustes deve funcionar e você deve conseguir incluir os valores Sacola e Situação na sua tabela.

Caso não de certo, cole aqui a estrutura da sua tabela, como imagem exemplo abaixo:

image.thumb.png.ec06db1218655ceaff03457c89be6b17.png

 

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
14 horas atrás, Felipe Guedes Coutinho disse:

adriano.eurich

Existem alguns erros em seu código.

Vamos tentar arrumar todos.

Só para que você entenda, o código abaixo não muda o valor do campo SITUACAO


<?php
$link = new mysqli('localhost','root','','db_sacola');
$link->set_charset('utf8');
// Código para mudar a situação da sacola 
$i = 1;
while ($i <= 20) {
$sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$i." and SITUACAO = 2";
if ($resultado = mysql_fetch_assoc(mysql_query($sql))) {?>
     <button id="botao" data-numero="<?php echo $i; ?>" class="btn RED" style="width:120px; height:37px; background-color: #FF0000;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php } else {?>
     <button id="botao" data-numero="<?php $i; ?>" class="btn blue" style="width:120px; height:37px; background-color: #0000FF;" onclick="mudaCor(this)"><?php echo $i; ?></button>
<?php }
$i++;
}?>

Eu recomendo primeiro você criar um arquivo que ira realizar a conexão com o seu Banco De Dados.

E recomendo que o faça assim:

 

conexao.php

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

$enddb = "localhost";    //Localhost do seu Banco de Dados
$user = "root";          //Usuário de acesso ao Banco de Dados
$pass = "";              //Senha do Usuário de acesso ao Banco de Dados
$database = "db_sacola"; //Nome da sua DataBase
 
$conndb = mysql_connect($enddb,$user,$pass);
if(!$conndb){
       echo "Problemas ao realizar a conexao com o banco de dados (".mysql_error().")";
       exit();
}
mysql_select_db($database,$conndb);
mysql_set_charset('utf8',$conndb);
?>

 

Agora vamos aos outros detalhes.

Dentro do seu arquivo SACOLA.PHP você ira trocar todos os "botões" fixos pelos comandos abaixo:

Coloque isso:

<?php

if (!@include_once "conexao.php" ) {echo "Arquivo: conexao.php não incluso";};
$x = 1;
$sacola = 1;
while($x <= 4) {
    echo "<div class='linha".$x."'>";
    $y = 1;
    while ($y <= 5) {
        $sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$sacola." and SITUACAO = 2";
        if($resultset = mysql_fetch_assoc(mysql_query($sql))) {;
            echo "<button id='botao' data-numero='".$sacola."' style='width:120px; height:37px; background-color: #FF0000;'>".$sacola."</button>";
        } else {
            echo "<button id='botao' data-numero='".$sacola."' style='width:120px; height:37px; background-color: #0000FF;'>".$sacola."</button>";
        }
        $sacola = $sacola + 1;
        $y = $y + 1;
    }
    $x = $x + 1;
}
?>

 

No lugar disso:

!-- Botões -->
    <div class="linha1">
        <button id="botao" data-numero="01"class="btn blue" style="width:120px; height:37px">01</button>
        <button id="botao" data-numero="02"class="btn blue" style="width:120px; height:37px">02</button>
        <button id="botao" data-numero="03"class="btn blue" style="width:120px; height:37px">03</button>
        <button id="botao" data-numero="04"class="btn blue" style="width:120px; height:37px">04</button>
        <button id="botao" data-numero="05"class="btn blue" style="width:120px; height:37px">05</button>                
    </div>
    
    <div class="linha2">
        <button id="botao" data-numero="06"class="btn blue" style="width:120px; height:37px">06</button>
        <button id="botao" data-numero="07"class="btn blue" style="width:120px; height:37px">07</button>
        <button id="botao" data-numero="08"class="btn blue" style="width:120px; height:37px">08</button>
        <button id="botao" data-numero="09"class="btn blue" style="width:120px; height:37px">09</button>
        <button id="botao" data-numero="10"class="btn blue" style="width:120px; height:37px">10</button>          
    </div>
    
    <div class="linha3">
        <button id="botao" data-numero="11"class="btn blue" style="width:120px; height:37px">11</button>
        <button id="botao" data-numero="12"class="btn blue" style="width:120px; height:37px">12</button>
        <button id="botao" data-numero="13"class="btn blue" style="width:120px; height:37px">13</button>
        <button id="botao" data-numero="14"class="btn blue" style="width:120px; height:37px">14</button>
        <button id="botao" data-numero="15"class="btn blue" style="width:120px; height:37px">15</button>          
    </div>
    
    <div class="linha4">
        <button id="botao" data-numero="16"class="btn blue" style="width:120px; height:37px">16</button>
        <button id="botao" data-numero="17"class="btn blue" style="width:120px; height:37px">17</button>
        <button id="botao" data-numero="18"class="btn blue" style="width:120px; height:37px">18</button>
        <button id="botao" data-numero="19"class="btn blue" style="width:120px; height:37px">19</button>
        <button id="botao" data-numero="20"class="btn blue" style="width:120px; height:37px">20</button>          
    </div>
</div>

 

O RESULTADO É ISSO:

Se encontrar a sacola na tabela, aparece vermelho, se não encontrar aparece azul

image.png.4b4b656bd2d649b13e4bb7f8630b7077.png

 

Outro detalhe é sobre o seu comando INSERT.

Troque isso:


insert into tb_emprestimo values(default,'$nome','$telefone','$cpf','$sacola','$periodo','$situacao')

Pelo comando abaixo caso os campos SACOLA e SITUACAO no seu banco de dados sejam NUMÉRICOS (INT ou FLOAT);


insert into tb_emprestimo values(default,'".$nome."','".$telefone."','".$cpf."',".$sacola.",'".$periodo."',".$situacao.")

Eu fiz uma explicação do porque em um POST mas você não deu atenção e o erro pode estar na clausula SQL que você esta gerando.

 

Acho que com esses ajustes deve funcionar e você deve conseguir incluir os valores Sacola e Situação na sua tabela.

Caso não de certo, cole aqui a estrutura da sua tabela, como imagem exemplo abaixo:

image.thumb.png.ec06db1218655ceaff03457c89be6b17.png

 

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Oi Felipe, primeiro obrigado pela paciência e toda a ajuda, eu tentei fazer a conexão da forma que falou e também a parte do INSERT,, mas sempre da algum erro, não sei, mas será que pode ser por eu estar usando o netbeans 8.2 pra escrever o código? falo isso por causa das aspas duplas e simples, tive uns problemas assim com python. vou anexar a estrutura da tabela, e tentar aqui novamente como você falou uma hora da certo rsrsr.

estrutura.PNG

Editado por adriano.eurich
Acrescentei algumas alterações

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Pela imagem da sua tabela você utiliza o PHPMyAdmin.

 

Executa o comando abaixo direto nele, no PHPMyAdmin

 

insert into tb_emprestimo (reg, nome, telefone, cpf, sacola, periodo, situacao) VALUES (NULL, 'Usuario Teste', '43831234', '121.343.565-78', 1, 'Manhã', 'Pendente');

 

Eu acredito que o editor não tenha nada a ver, eu programa usando o Dreamweaver, uso o Notepad ++, já usei o ultraEdit e até mesmo o PSPad para o mesmo projeto que faço atualmente, o NetBeans é apenas um editor, o que eu acredito é que ou a lógica está errada ou tem algum erro no seu código, mas faça com calma que vai dar certo.

 

Se o comando que eu falei acima funcionar, você vai ter que adaptar para o PHP, fica mais fácil se você entender o que precisa ser subistituido e como fazer isso, o que estiver entre aspas simples você coloca ".$variavel." e a SACOLA que é o único campo INT da sua tabela, sem as aspas simples mesmo, apenas ".$variavel." isso tem que funcionar, pois é do jeito que eu uso nos meus códigos e fica muito mais fácil de ver e entender onde esta a variavel e onde esta a string do comando SQL.

 

Não lembro como é o editor do NetBeans, mas eu recomendo você a baixar o Notepad ++ (ele é free) e quando você abre um arquivo do tipo PHP ele pinta os comandos, fica mais fácil de ver, talvez se você colocar o seu código nele você consiga ver os comandos mais facilmente.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
6 horas atrás, Felipe Guedes Coutinho disse:

adriano.eurich

Pela imagem da sua tabela você utiliza o PHPMyAdmin.

 

Executa o comando abaixo direto nele, no PHPMyAdmin

 

insert into tb_emprestimo (reg, nome, telefone, cpf, sacola, periodo, situacao) VALUES (NULL, 'Usuario Teste', '43831234', '121.343.565-78', 1, 'Manhã', 'Pendente');

 

Eu acredito que o editor não tenha nada a ver, eu programa usando o Dreamweaver, uso o Notepad ++, já usei o ultraEdit e até mesmo o PSPad para o mesmo projeto que faço atualmente, o NetBeans é apenas um editor, o que eu acredito é que ou a lógica está errada ou tem algum erro no seu código, mas faça com calma que vai dar certo.

 

Se o comando que eu falei acima funcionar, você vai ter que adaptar para o PHP, fica mais fácil se você entender o que precisa ser subistituido e como fazer isso, o que estiver entre aspas simples você coloca ".$variavel." e a SACOLA que é o único campo INT da sua tabela, sem as aspas simples mesmo, apenas ".$variavel." isso tem que funcionar, pois é do jeito que eu uso nos meus códigos e fica muito mais fácil de ver e entender onde esta a variavel e onde esta a string do comando SQL.

 

Não lembro como é o editor do NetBeans, mas eu recomendo você a baixar o Notepad ++ (ele é free) e quando você abre um arquivo do tipo PHP ele pinta os comandos, fica mais fácil de ver, talvez se você colocar o seu código nele você consiga ver os comandos mais facilmente.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

 

Felipe, pelo comando direto no phpadmin deu certo sim, como mostra o print.

Pois é eu devo estar errando alguma coisa no código, pois usei uma parte que você me ajudou e outra parte que eu tinha feito, vou rever tudo aqui e tentar entender melhor, mas agradeço muito mesmo sua paciência e toda a ajuda, obrigado!

 

 

Capturar.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Que isso man, as vezes a lógica está certa, mas uma coisinha as vezes besta faz o comando não funcionar.

No seu caso o motivo para o valor SACOLA não estar sendo gravado na tabela existe 2 motivos

 

Ou você esta colocando no comando SQL o valor da SACOLA como STRING, entre aspas simples ' ' e não pode, porque no seu banco de dados ele está como valor INT (INTEIRO) que aceita só NÚMERO.

 

Por isso ele tem que ficar assim no seu comando       , 1 , 'periodo', 'situação')  o que for STRING (VARCHAR, TEXT ou CHAR) precisa ser inserido na base com aspas e isso você esta fazendo corretamente para os campos Nome, Telefone, CPF e periodo.

 

O campo situação você também não estava conseguindo, veja se ele esta entre aspas simples ' '.

 

É coisa besta mesmo.

 

Eu apenas recomendo você a dar um ECHO nas variáveis SACOLA e SITUAÇÃO para ver o que tem dentro delas, as vezes o outro erro é elas não estarem com valor.

 

Se precisar de ajuda pode pedir, sempre vai ter alguém disposo a ajudar.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

Blz Felipe, obrigado, só mais uma coisa nesse trecho de código que você passou, essa variável resultset não conseguir entender ela tem que ser declarada ?

<?php

if (!@include_once "conexao.php" ) {echo "Arquivo: conexao.php não incluso";};
$x = 1;
$sacola = 1;
while($x <= 4) {
    echo "<div class='linha".$x."'>";
    $y = 1;
    while ($y <= 5) {
        $sql = "SELECT SACOLA FROM TB_EMPRESTIMO WHERE SACOLA = ".$sacola." and SITUACAO = 2";
        if($resultset = mysql_fetch_assoc(mysql_query($sql))) {;
            echo "<button id='botao' data-numero='".$sacola."' style='width:120px; height:37px; background-color: #FF0000;'>".$sacola."</button>";
        } else {
            echo "<button id='botao' data-numero='".$sacola."' style='width:120px; height:37px; background-color: #0000FF;'>".$sacola."</button>";
        }
        $sacola = $sacola + 1;
        $y = $y + 1;
    }
    $x = $x + 1;
}
?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nenhuma variável no PHP precisa ser declarada para ser usada como em outras linguagens como JavaScript, C, C++, Java.

 

no JavaScript como exemplo você precisa colocar o comando VAR na frente da variável.

exemplo var i;

pronto declarei a variável i

 

No PHP você simplesmente declara ela já usando.

 

No caso essa variável $resultset recebe o resultado do registro lido retornado do select.

 

Então ela é declarada na hora que eu coloco $variável =

 

Entendeu?

Como no seu select temos apenas uma coluna que é Sacola, a variável $resultset tem um array que corresponde a cada coluna da tabela então na variável $resultset teremos $resultset[‘SACOLA’] = “valor retornado” SE encontrar. Como está no IF, SE NÃO ENCONTRAR a variável fica vazia e então ela sai do IF.

Se tivesse mais uma coluna ela seria &resultset[‘outracoluna’] = valor

 

É meio difícil de entender sem ver o resultado.

Mas acho que dá para entender.

 

Espero ter ajudado

 

Att.

Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 horas atrás, Felipe Guedes Coutinho disse:

Nenhuma variável no PHP precisa ser declarada para ser usada como em outras linguagens como JavaScript, C, C++, Java.

 

no JavaScript como exemplo você precisa colocar o comando VAR na frente da variável.

exemplo var i;

pronto declarei a variável i

 

No PHP você simplesmente declara ela já usando.

 

No caso essa variável $resultset recebe o resultado do registro lido retornado do select.

 

Então ela é declarada na hora que eu coloco $variável =

 

Entendeu?

Como no seu select temos apenas uma coluna que é Sacola, a variável $resultset tem um array que corresponde a cada coluna da tabela então na variável $resultset teremos $resultset[‘SACOLA’] = “valor retornado” SE encontrar. Como está no IF, SE NÃO ENCONTRAR a variável fica vazia e então ela sai do IF.

Se tivesse mais uma coluna ela seria &resultset[‘outracoluna’] = valor

 

É meio difícil de entender sem ver o resultado.

Mas acho que dá para entender.

 

Espero ter ajudado

 

Att.

Felipe Guedes Coutinho

Estive vendo a parte do script que tenho, sera que teria algo com o que foi feito ali teria que converter algo sera,  tem a pagina SACOLA.PHP onde consta os números de 1 a 20, e tem a outra pagina EMPRESTIMO.PHP que é o formulário, quando eu clico no numero 1 por exemplo ele me direciona para pagina emprestimo.php e ja me traz o numero que eu cliquei vou postar o código.

        <script>
            //pega todos os botoes
            const botoes = document.querySelectorAll('#botao');

            for (let i = 0; i < botoes.length; i++) {
                //escuta o evento de click em cada botao
                botoes[i].addEventListener('click', function (e) {
                    //pega o numero do botao clicado
                    const sacola = this.dataset.numero;

                    //redireciona para emprestimos.php passando o numero do botao
                    window.location.href = `emprestimo.php?sacola=${sacola}`;
                });
            }
        </script>
        
        
        <script>
            //muda cor do botão
            function mudaCor(el){
                var cor = el.style.backgroundColor;
                    if(cor == 'rgb(0, 0, 255)') {
                    el.style.backgroundColor = '#FF0000';
                    } else {
                    el.style.backgroundColor = '#0000FF';
                    }
            }
        </script>

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

adriano.eurich

Assim, se o código abaixo estava funcionando antes, ele ira funcionar com o código atual, caso você tenha alguma dúvida execute o SACOLA.PHP que tem os botões e com a ajuda do navegador veja o código fonte formado por ele, você verá que o código gerado dos botões são os mesmos códigos que você tinha na sua página com os botões fixos.

 

<script>
    //pega todos os botoes
    const botoes = document.querySelectorAll('#botao');

    for (let i = 0; i < botoes.length; i++) {
        //escuta o evento de click em cada botao
        botoes[i].addEventListener('click', function (e) {
        //pega o numero do botao clicado
        const sacola = this.dataset.numero;

        //redireciona para emprestimos.php passando o numero do botao
        window.location.href = `emprestimo.php?sacola=${sacola}`;
    });
}
</script>

Agora sobre este código:

 

<script>
//muda cor do botão
function mudaCor(el){
    var cor = el.style.backgroundColor;
    if (cor == 'rgb(0, 0, 255)') {
        el.style.backgroundColor = '#FF0000';
    } else {
        el.style.backgroundColor = '#0000FF';
    }
}
</script>

Ele só ira funcionar se nos botões que você cria você colocar um evento como por exemplo onClick="mudaCor(this)".

 

Ficando assim:

echo "<button id='botao' data-numero='".$sacola."' onclick='mudaCor(this)' style='width:120px; height:37px; background-color: #FF0000;'>".$sacola."</button>";

 

echo "<button id='botao' data-numero='".$sacola."' onclick='mudaCor(this)' style='width:120px; height:37px; background-color: #0000FF;'>".$sacola."</button>";

 

Para ambos os casos do seu IF.

 

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
6 horas atrás, Felipe Guedes Coutinho disse:

adriano.eurich

Assim, se o código abaixo estava funcionando antes, ele ira funcionar com o código atual, caso você tenha alguma dúvida execute o SACOLA.PHP que tem os botões e com a ajuda do navegador veja o código fonte formado por ele, você verá que o código gerado dos botões são os mesmos códigos que você tinha na sua página com os botões fixos.

 


<script>
    //pega todos os botoes
    const botoes = document.querySelectorAll('#botao');

    for (let i = 0; i < botoes.length; i++) {
        //escuta o evento de click em cada botao
        botoes[i].addEventListener('click', function (e) {
        //pega o numero do botao clicado
        const sacola = this.dataset.numero;

        //redireciona para emprestimos.php passando o numero do botao
        window.location.href = `emprestimo.php?sacola=${sacola}`;
    });
}
</script>

Agora sobre este código:

 


<script>
//muda cor do botão
function mudaCor(el){
    var cor = el.style.backgroundColor;
    if (cor == 'rgb(0, 0, 255)') {
        el.style.backgroundColor = '#FF0000';
    } else {
        el.style.backgroundColor = '#0000FF';
    }
}
</script>

Ele só ira funcionar se nos botões que você cria você colocar um evento como por exemplo onClick="mudaCor(this)".

 

Ficando assim:

echo "<button id='botao' data-numero='".$sacola."' onclick='mudaCor(this)' style='width:120px; height:37px; background-color: #FF0000;'>".$sacola."</button>";

 

echo "<button id='botao' data-numero='".$sacola."' onclick='mudaCor(this)' style='width:120px; height:37px; background-color: #0000FF;'>".$sacola."</button>";

 

Para ambos os casos do seu IF.

 

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Então blz, vou mexer nele aqui, novamente obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ILR master
      Fala galera, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
    • Por Carlos Web Soluções Web
      Olá...
      Estou tentando fazer o seguinte !!
      Listando dados em tabela !!
      Gostaria que....se na listagem houver 4 linhas...indepedente de seu número de ID, faça a listagem em ID ser em ordem 1 2 3 4 !!
      Exemplo...se tiver uma listagem de dados que está em ID 1 3 3...faça ficar 1 2 3 !!

       
      echo "<table class='tabela_dados' border='1'> <tr> <td>ID</td> <td>Nome Empresa</td> <td>Responsável</td> <td>Telefone 1</td> <td>Telefone 2</td> <td>E-mail 1</td> <td>E-mail 2</td> <td>Endereço</td> <td>CEP</td> <td>Bairro</td> <td>AÇÃO 1</td> <td>AÇÃO 2</td> </tr> "; $sql = "SELECT ID FROM usuarios_dados WHERE Usuario='$usuario'"; $result = $conn->query($sql); $num_rows = $result->num_rows; $Novo_ID = 1; for ($i = 0; $i < $num_rows; $i++) { $registro = $result -> fetch_row(); $sql2 = "UPDATE usuarios_dados SET ID='$Novo_ID' WHERE ID='$Novo_ID'"; $result2 = $conn->query($sql2); $Novo_ID++; } $sql = "SELECT * FROM usuarios_dados"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<tr> <td>$row[ID]</td> <td>$row[Nome_Empresa]</td> <td>$row[Responsavel]</td> <td>$row[Telefone_1]</td> <td>$row[Telefone_2]</td> <td>$row[Email_1]</td> <td>$row[Email_2]</td> <td>$row[Endereço]</td> <td>$row[CEP]</td> <td>$row[Bairro]</td> <td> <form method='post' action='Editar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='EDITAR'> </form> </td> <td> <form method='post' action='Deletar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='DELETAR'> </form> </td> </tr> "; } } else { echo "0 results"; } $conn->close();  
    • Por ILR master
      Boa tarde pessoal, tudo bem ?
       
      Eu uso o tinymce para cadastro de textos no meu siite, porém, quero fazer um sistema para que os colunistas possam fazer o próprio post.
      O problema do tinymce, é que ele mantém a formatação do texto copiado, como tamanho de fonts, negritos, etc... Quero que o usuário cole o texto e a própria textarea limpe a formatação para que ele formate como quiser.
       
      A pergunta é:
       
      O tinymce tem uma opção para desabilitar a formatação quando um texto é colocado?
      Tem alguma função via java ou php para retirar a formatação assim que o texto é colado?
      Ou é melhor usar um outro editor?
       
      Agradeço deste já.
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.