Ir para conteúdo
alefpr

Exibir senha gerada pelo PHP através do JavaScript

Recommended Posts

Sou iniciante em PHP, estou criando um sistema para gerenciamento de fila de banco. https://i.imgur.com/RCDPQ5E.png

Funciona assim: 1º o cliente retira a senha, a cada click uma nova senha é gerada.(até aí tudo bem)

                              2º quando o caixa clicar em Chamar, para chamar a próxima pessoa da fila a senha seria exibida na tela (Esse é o problema, não faço a mínima ideia de como exibir a senha via javascript). https://i.imgur.com/oznFsOu.png

Obs: Todas as senhas geradas são guardadas em um txt. https://i.imgur.com/0THr1Lk.png

O que foi feito até agora:
HTML/JavaScript

<html>
<body>
<title>Fila</title>

<h2>Gerenciamento de fila de banco</h2>
<form method = "get" action = "newbie.php">

    <!--PARTE DO CLIENTE -->

    RETIRE SUA SENHA AQUI : <input type="submit" value="Retirar senha"/><br/>


    <!--PARTE DO ATENDENTE-->

    <br/><label>ESCOLHA O CAIXA: </label>
    <select>
        <option>CAIXA DE ATENDIMENTO/PAGAMENTO</option>
    </select><br/>
    <br/>CLIQUE AQUI PARA CHAMAR: <input type="button" value="Chamar" onclick="msg()">
</form>
	<script>
		function msg() {
		alert("Exibir a senha gerada aqui");
		
	}
	</script>
</body>
</html>

PHP

<?php
  // Esse código é do 'tetsuo', um membro do fórum
  // define letras maiúsculas de A até Z
  $letras = range('A', 'Z');

  // define números inteiros de 1 até 9
  $numeros = range(1, 9);

  // embaralha as letras
  shuffle($letras);

  // embaralha os números
  shuffle($numeros);

  // cria uma senha com 3 letras - um número
  $senha = implode('', array_slice($letras, 3, 3)) . '-' . end($numeros);


  //define um nome para o arquivo
  $file = 'senhas.txt';

  // se não puder criar/abrir o arquivo
  if (!$handleFile = fopen($file, "a+")) {
    // mostra mensagem na tela
    die("<p>Erro ao abrir/criar o arquivo: (<b>$file</b>)</p>");
  }
  // grava senha com uma quebra de linha no final
  fwrite($handleFile, $senha . "\r\n");

  // fecha o arquivo
  fclose($handleFile);

  // mostra o conteúdo do arquivo na tela:
  echo '<pre>';
  print_r(file_get_contents($file));
  echo '</pre>';
?>

<a href="newbie.html">Gerar nova senha.</a>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exemplo PHP

<?php
$enviar_para_javascript = 'blablabla....';
echo ("<script>recebe_do_php('{$enviar_para_javascript}')</script>");

 

Exemplo Javascript

function recebe_do_php(parametro) {
  console.log('Eu recebi do php essa coisa: ' + parametro);
}

 

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 Ana Paula dos Santos
      Olá pessoal, sou estudante de TI e não estou conseguindo desenvolver em php o cálculo de 3 variáveis que são escolhidas pelo usuário conforme formulário apresentado.
      Trata-se do cálculo de total de calorias ingeridas por uma pessoa, calculadas a partir da escolha do "cardápio". O cardápio apresenta apenas os nomes e em php eu preciso atribuir o valor das variáveis e somar as três variáveis escolhidas no cardápio. As escolhas são: um prato, uma sobremesa e uma bebida.
       
      O formulário está da seguinte forma:
       
      <html>
      <head>
      </head>
      <body>
      <h1><center>Quantidade de Calorias<center></h1>
      <br>
      <form method="POST" action="">
          <table align='center' border=1 width=300 height=50>
                  <tr>
                      <td align='center'>PRATOS</td>
                  </tr>
                  <tr>
                      <td><form> 
                          <input type="radio" name="pratos" value="1" checked> Arroz, feijão e carne<br>
                          <input type="radio" name="pratos" value="2"> Macarrão e frango<br>
                          <input type="radio" name="pratos" value="3"> Feijoada<br>
                          <input type="radio" name="pratos" value="4"> Sopa<br>
                          <input type="radio" name="pratos" value="5"> Pizza
                      </td></form>
                  </tr>    
          </table>
          <br>
          
          <table align='center' border=1 width=300 height=50>
                  <tr>
                      <td align='center'>SOBREMESAS</td>
                  </tr>
                  <tr>
                      <td><form> 
                          <input type="radio" name="sobremesas" value="1" checked> Salada de frutas<br>
                          <input type="radio" name="sobremesas" value="2"> Pudim<br>
                          <input type="radio" name="sobremesas" value="3"> Bolo<br>
                          <input type="radio" name="sobremesas" value="4"> Gelatina<br>
                          <input type="radio" name="sobremesas" value="5"> Torta de morango
                      </td></form>
                  </tr>    
          </table>
          <br>
          
          <table align='center' border=1 width=300 height=50>
                  <tr>
                      <td align='center'>BEBIDAS</td>
                  </tr>
                  <tr>
                      <td><form> 
                          <input type="radio" name="bebidas" value="1" checked> Água<br>
                          <input type="radio" name="bebidas" value="2"> Suco<br>
                          <input type="radio" name="bebidas" value="3"> Refrigerante<br>
                          <input type="radio" name="bebidas" value="4"> Refrigerante Light<br>
                          <input type="radio" name="bebidas" value="5"> Cerveja
                      </td></form>
                  </tr>
          </table>
          <br>
          
          <center><input type=submit value="Calcular"></center>
          
      </form>
       
      Não consigo atribuir os valores às variáveis e depois somar as variáveis selecionadas em php!!!
    • Por Thiiiziiin
      Olá pessoal, como vão?
      Estou com o seguinte problema, tenho uma tabela em um banco de dados e estou pegando os valores para gerar gráficos, com a API Charts.js.
      Estou fazendo um gráfico dinâmico, em tempo real, porém, se eu insiro um dado no banco de dados, não consigo alterar no gráfico (é preciso dar refresh na página para alterar).
      Toda a conexão com o banco de dados está correta, pois se eu atualizo a página, o gráfico altera com os valores que defini.

      Eu fiz testes utilizando o math.random(), e funcionou, atualizava conforme os valores aleatórios gerados por essa função.
      Quando defino para ler do banco de dados, fica estático.
      Minha conclusão é que a variável de conexão do banco de dados não se altera em tempo real.

      Existe a possibilidade de atualizar a variável a cada segundo em PHP?
      Segue o código que estou fazendo:
       
      <?php include('conexao.php'); $select = $PDO->query("SELECT corrente FROM tbdados ORDER BY id DESC limit 1"); $select->execute(); $result = $select->fetch(); // retorno do banco de dados mysql_close($select); ?> // Abaixo é o javascript da API Charts.js modificada <script type="text/javascript"> var ctx = document.getElementById('myChart').getContext("2d"); var gradientStroke = ctx.createLinearGradient(0, 0, 0, 0); gradientStroke.addColorStop(0, '#FFC800'); var pointStroke = ctx.createLinearGradient(0, 0, 0, 0); pointStroke.addColorStop(0, '#3f3f3f'); var gradientFill = ctx.createLinearGradient(0, 250, 0, 50); gradientFill.addColorStop(0, "rgba(63, 63, 63, 0.7)"); gradientFill.addColorStop(1, "rgba(255, 182, 0, 1)"); var contador = 0; var corrente = <?php echo $result['corrente']; ?>; // variável que foi capturada do banco var segundos = 1000; <?php echo $rows; ?> var myChart = new Chart(ctx, { type: 'line', data: { labels: ["", "", "", "", "", "", "", "", "", "" ], datasets: [{ label: "Corrente (A)", borderColor: gradientStroke, pointBorderColor: gradientStroke, pointBackgroundColor: gradientStroke, pointHoverBackgroundColor: pointStroke, pointHoverBorderColor: gradientStroke, pointBorderWidth: 5, pointHoverRadius: 10, pointHoverBorderWidth: 1, pointHitRadius: 25, pointRadius: 3, fill: true, backgroundColor: gradientFill, borderWidth: 2, data: [, , , , , , , , , ,] }] }, options: { legend: { position: "bottom", labels: { fontColor: 'rgba(255,255,255,0.5)' } }, scales: { yAxes: [{ ticks: { fontColor: "rgba(255,255,255,0.5)", fontStyle: "bold", beginAtZero: true, maxTicksLimit: 10, padding: 20, }, gridLines: { drawTicks: false, display: false } }], xAxes: [{ gridLines: { zeroLineColor: "transparent" }, ticks: { padding: 20, fontColor: "rgba(255,255,255,0.5)", fontStyle: "bold" } }] } } }); function adddata(){ myChart.data.labels.push(contador + " segundos"); myChart.data.labels.splice(0, 1); myChart.data.datasets[0].data.splice(0, 1); console.log(myChart.data.datasets[0].data); myChart.data.datasets[0].data.push(corrente); myChart.update(); contador+=(segundos / 1000); } setInterval(function(){ adddata(); },segundos); var option = { showLines: true, scales: { yAxes: [{ display: true, ticks: { beginAtZero:true } }] } }; $(function() { setTime(); function setTime() { var date = new Date().getTime(); var string = "Corrente:<br/><span class='corrente_valor'>"+corrente+"</span><br/>Amperes"; setTimeout(setTime, segundos); $('#correnteCirculo').html(string); } }); </script>  
    • Por PedroTodorovski
      Quais a vantagens e as desvantagens de desenvolver um menu dinâmico (banco de dados) ao invés de um menu estático? Estou desenvolvendo um ecommerce e tenho essa dúvida.
    • Por brunobos21
      Olá, eu criei um formulario que salva os dados em um banco de dados mysql, e criei uma pagina de relatorio para mostrar todo mundo que se cadastra nesse banco, até ai tudo certo, só que eu tenho um campo "Status" que eu queria colocar um checkbox para o administrador poder marcar esse campo e mudar no mysql o valor do Status para 1 sempre que clicar no botão atualizar, e se o administrador desmarcar antes apertar o botão Atualizar, não mudar na tabela. Já pesquisei em tudo quer canto e não achei, se puderem me ajudar enviando algum modelo de código ou algum tópico aqui do forúm que ja fale sobre isso, agradeço. Aqui está meu código:
      <?php // definições de host, database, usuário e senha $host = "host"; $banco = "banco"; $user = "user"; $pass = "pass"; $tbl_name="tabela";   $nome = $_POST['nome']; $numero = $_POST['numero']; $email = $_POST['email']; $cidade = $_POST['cidade']; $whatsapp = $_POST['whatsapp']; $data = $_POST['data']; $status = $_POST['status'];   // conecta ao banco de dados $con = mysql_pconnect($host, $user, $pass) or trigger_error(mysql_error(),E_USER_ERROR); // seleciona a base de dados em que vamos trabalhar mysql_select_db($banco, $con); // cria a instrução SQL que vai selecionar os dados $query = sprintf("SELECT * FROM Pesquisas"); // executa a query $dados = mysql_query($query, $con) or die(mysql_error()); // transforma os dados em um array $linha = mysql_fetch_assoc($dados); // calcula quantos dados retornaram $total = mysql_num_rows($dados); ?> <!DOCTYPE html> <html lang="en"> <head>     <title>Relatorio</title>     <meta charset="latin1_swedish_ci">     <meta name="viewport" content="width=device-width, initial-scale=1"> <!--===============================================================================================-->       <link rel="icon" type="image/png" href="images/icons/favicon2.ico"/> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/bootstrap/css/bootstrap.min.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="fonts/font-awesome-4.7.0/css/font-awesome.min.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/animate/animate.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/select2/select2.min.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/perfect-scrollbar/perfect-scrollbar.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="css/util.css">     <link rel="stylesheet" type="text/css" href="css/main.css"> <!--===============================================================================================--> <script src="vendor/jquery/jquery-3.2.1.min.js"></script> <script type="text/javascript"> //--> </script> </head> <body> <form action=" " method="post">     <div class="limiter">         <div class="container-table100">             <div class="wrap-table100">                 <div class="table100">                     <table>                         <thead>                             <tr class="table100-head">                                 <th class="column1">Nome</th>                                 <th class="column2">Numero</th>                                 <th class="column3">Cidade</th>                                 <th class="column4">E-mail</th>                                 <th class="column5">Whatsapp</th>                                 <th class="column6">Tipo</th>                                 <th class="column6">Data</th>                                 <th class="column6">Status</th>                             </tr>                         </thead>                           <?php                         // se o número de resultados for maior que zero, mostra os dados                         if($total > 0) {                     // inicia o loop que vai mostrar todos os dados                     do {                         ?>                         <tbody>                                 <tr>                                     <td class="column1"><?=$linha['nome']?></td>                                     <td class="column2"><?=$linha['numero']?></td>                                     <td class="column3"><?=$linha['cidade']?></td>                                     <td class="column4"><?=$linha['email']?></td>                                     <td class="column5"><?=$linha['whatsapp']?></td>                                     <td class="column6"><?=$linha['tipo']?></td>                                     <td class="column6"><?=$linha['data']?></td>                                     <td class="column6">                                     <input type=checkbox name="banco[]" value="1"><?=$linha['status']?>                                     </td>                                 </tr>                                </tbody>                         <?php                     // finaliza o loop que vai mostrar os dados                     }while($linha = mysql_fetch_assoc($dados));                         // fim do if                         }                         ?>                     </table>                     <div class="container-contact2-form-btn">                                 <div class="wrap-contact2-form-btn">                                     <div class="contact3-form-bgbtn"></div>                                     <button class="contact2-form-btn" type="submit" value="Enviar" name="enviar">                                         Atualizar                                     </button>                                 </div>                             </div>                 </div>             </div>         </div>     </div> </form>   <!--===============================================================================================-->       <script src="vendor/jquery/jquery-3.2.1.min.js"></script> <!--===============================================================================================-->     <script src="vendor/bootstrap/js/popper.js"></script>     <script src="vendor/bootstrap/js/bootstrap.min.js"></script> <!--===============================================================================================-->     <script src="vendor/select2/select2.min.js"></script> <!--===============================================================================================-->     <script src="js/main.js"></script> </body> </html> <?php // tira o resultado da busca da memória mysql_free_result($dados); ?>
×

Informação importante

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