Jump to content
Fórum Script Brasil
  • 0

Enviar e receber dados via AJAX


Question

Olá, estou com um código main.js que envia os campos do form da página painel.php via ajax. O AJAX envia para a página comando.php q processa esses dados.

Gostaria q essa página comando.php retornasse uma consulta no banco (retorno via AJAX), para q eu pudesse pegar essa informação e enviar de volta para o script.js

A váriavel em questão é $comando (armazena a consulta do banco)

------Um formulário da página painel.php-------

 <form  method="POST" action="comando.php" id = "formA">
    <input type='hidden' name="L" value='8'/>
    <button type = "submit" class = "com2" id = "comando"/>Abajur</button>
    </form>

 <script src = "script.js"></script>

-----------script.js--------------------

$("#form").submit(function(e) {
    var form_data = $(this).serialize();                    // Pega os dados do FORM
    var form_url = $(this).attr("action");                  // Pega o ACTION
    var form_method = $(this).attr("method").toUpperCase(); // POST ou GET

    $.ajax({
            url: form_url,
            type: form_method,
            data: form_data,
            dataType: 'json',
            cache: false,                                   // força as páginas solicitadas a não serem armazenada em cache
            success:  function(returnhtml){
                if(returnhtml.status == 'ok'){
                    $("form").css({"display": "none"});
                    $('p').html(returnhtml.message);
                }else if (returnhtml.status == 'fail'){
                    window.alert(returnhtml.message);
                }
            }

    });
 

 

--------PÁGINA PHP---------

<?php
session_start();
require('phpMQTT-master/phpMQTT.php');
include ('conecta.php');

$comando = $_POST['L'];
echo $comando;
$server   = 'localhost';
$port     = 1883;
$clientId = 'publisher';

$mqtt = new Bluerhinos\phpMQTT($server, $port, $clientId);
$mqtt->connect();
$mqtt->publish('test', $comando,0);
$mqtt->close();
echo $comando;
$sql = "SELECT estado FROM componentes WHERE codigo = '$comando'";
$sql = mysqli_query($conexao,$sql);
$linha = mysqli_fetch_array($sql);
if(mysqli_num_rows($sql)){
        $_SESSION['codigo'] = $linha['codigo'];
        echo $_SESSION['codigo'];
}else{
        echo 'vazio';
}
?>
 

Link to post
Share on other sites

1 answer to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      149300
    • Total Posts
      645709
×
×
  • Create New...