Does not return the table

Asked

Viewed 49 times

1

have the page php consumption. where I have the menu:

<nav class="menu">
  <ul class="menu-list">
        <li><a href="#">Registos</a>
                <ul class="sub-menu">
                    <li><a href="#produto_44">Diário Alimentação</a></li>
                    <li><a href="#produto_45">Diário Alimentação Centro Dia</a></li>
                    <li><a href="#produto_46">Consultar Registo Diário Alimentação</a></li>
                    <li><a href="#produto_47">Consultar Registo Diário Alimentação Concluídas</a></li>
                    <li><a href="#produto_48">Diário Alimentação Reforço AAD</a></li>
                    <li><a href="#produto_49">Consultar Diário Alimentação Reforço</a></li>
                    <li><a href="#produto_50">Resguardos</a></li>
                    <li><a href="#produto_51">Mapa Resumo Resguardos</a></li>
                </ul>
        </li>
  </ul>
</nav>

<section class="hide-section" id="produto_46"> 

</section>

</body> 
<script type="text/javascript"> 
$(document).ready(function(){ 

$("#produto_46").load("./produto_46");

$(".sub-menu li a").click(function(){ 
$("section[id^='produto_']").addClass("hide-section"); 
var id = $(this).attr("href"); 
$(id).removeClass("hide-section"); 
}); 

var h = window.location.hash; 
if(h) $(".sub-menu li a[href='"+h+"']").trigger("click"); 

 });
</script>

Then I have the page producto_46 where I have the form to put the time period:

 <?php
    /*
    Template Name: produto_46
    */ 

    include ('./consulta_1');

    ?>

    <form class="shadowbox6" class="form-validate" id="feedback_form16">
    <fieldset class="grupo">
     <table class="campo" cellspacing="10">
     <tr>
       <td>
        <strong><label for="Insira data de inicio:">Insira data de inicio:</label></strong>
        <input type="Date" name="inicio" placeholder="PESQUISAR" style="width:150px" required="" size="120">
        </td>
       <td>
        <strong><label for="Insira data de fim:">Insira data de fim:</label></strong>
        <input type="Date" name="fim" placeholder="PESQUISAR" style="width:150px" required="" size="120">
        </td>
    </tr>
     </table>
    </fieldset>
        <button class="btn btn-success" type="submit">Consultar</button>
    </form>

Then I have the page query 1 where I have php to return the table:

FROM centrodb.RegistoDiario

WHERE Estado IS NULL AND DataRegisto >= '$inicio' AND DataRegisto <= '$fim'";

$result_cursos1 = "SELECT Id,
       DataRegisto,
       Dia,
       TipoRefeicao,
       Refeicao,
       Hora,
       Motivo,
       Sugestao,
       Colaborador,
       Tratamento,
       Estado

FROM centrodb.RegistoDiarioDia

WHERE Estado IS NULL AND DataRegisto >= '$inicio' AND DataRegisto <= '$fim'";


$resultado_cursos = mysqli_query($conn, $result_cursos);

$resultado_cursos1 = mysqli_query($conn, $result_cursos1);

$tabela1 .= '<div id="tabela19" style="float: center" table align="center">';

$tabela1 .= '<table border="5">';

$tabela1 .= '<tr>';

$tabela1 .='<thead>';

$tabela1 .= '<tr>';

$tabela1 .= '<th WIDTH="80">Nº Registo</th>';

$tabela1 .= '<th WIDTH="100">Data</th>';

$tabela1 .= '<th WIDTH="90">Dia</th>';

$tabela1 .= '<th WIDTH="90">Tipo de Refeição</th>';

$tabela1 .= '<th WIDTH="90">Refeicao</th>';

$tabela1 .= '<th WIDTH="90">Hora da Refeição</th>';

$tabela1 .= '<th WIDTH="160">Motivo do incumprimento</th>';

$tabela1 .= '<th WIDTH="240">Sugestões / Observações</th>';

$tabela1 .= '<th WIDTH="110">Colaborador</th>';

$tabela1 .= '<th WIDTH="160">Tratamento</th>';

$tabela1 .= '<th WIDTH="90">Concluído</th>';

$tabela1 .= '</tr>';

$tabela1 .='</thead>'; 

$tabela1 .='<tbody>';

$tabela2 .= '<div style="float: center" table align="center">';

$tabela2 .= '<table border="5">';

$tabela2 .= '<tr>';

$tabela2 .='<thead>';

$tabela2 .= '<tr>';

$tabela2 .= '<th WIDTH="80">Nº Registo</th>';

$tabela2 .= '<th WIDTH="100">Data</th>';

$tabela2 .= '<th WIDTH="90">Dia</th>';

$tabela2 .= '<th WIDTH="90">Tipo de Refeição</th>';

$tabela2 .= '<th WIDTH="90">Refeicao</th>';

$tabela2 .= '<th WIDTH="90">Hora da Refeição</th>';

$tabela2 .= '<th WIDTH="160">Motivo do incumprimento</th>';

$tabela2 .= '<th WIDTH="240">Sugestões / Observações</th>';

$tabela2 .= '<th WIDTH="110">Colaborador</th>';

$tabela2 .= '<th WIDTH="160">Tratamento</th>';

$tabela2 .= '<th WIDTH="90">Concluído</th>';

$tabela2 .= '</tr>';

$tabela2 .='</thead>'; 

$tabela2 .='<tbody>';

    while($rows_cursos = mysqli_fetch_array($resultado_cursos)) {

$tabela1 .= '<tr>';

$tabela1 .= '<td>'.$rows_cursos['Id'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['DataRegisto'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['Dia'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['TipoRefeicao'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['Refeicao'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['Hora'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['Motivo'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['Sugestao'].'</td>';

$tabela1 .= '<td>'.$rows_cursos['Colaborador'].'</td>';

$tabela1 .= '<td> <input type="text" name= "Tratamento['.$rows_cursos['Id'].']" id= "Tratamento" value="'.$rows_cursos['Tratamento'].'"></td>';

$tabela1 .= '<td> <input type="checkbox" name= "Id[]" value="'.$rows_cursos['Id'].'"></td>';

$tabela1 .= '</tr>'; 

while($rows_cursos1 = mysqli_fetch_array($resultado_cursos1)) {

$tabela2 .= '<tr>';

$tabela2 .= '<td>'.$rows_cursos1['Id'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['DataRegisto'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['Dia'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['TipoRefeicao'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['Refeicao'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['Hora'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['Motivo'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['Sugestao'].'</td>';

$tabela2 .= '<td>'.$rows_cursos1['Colaborador'].'</td>';

$tabela2 .= '<td> <input type="text" name= "Tratamento['.$rows_cursos1['Id'].']" id= "Tratamento" value="'.$rows_cursos1['Tratamento'].'"></td>';

$tabela2 .= '<td> <input type="checkbox" name= "Id[]" value="'.$rows_cursos1['Id'].'"></td>';

$tabela2 .= '</tr>'; 
}}}
$tabela1 .= '</tr>';

$tabela1 .='</tbody>'; 

$tabela1 .= '</table>';

$tabela1 .= '</div>';

$tabela2 .= '</tr>';

$tabela2 .='</tbody>'; 

$tabela2 .= '</table>';

$tabela2 .= '</div>';

echo $tabela1;

?>
</br>
</br>
<form class="shadowbox3" class="form-validate" action="" method="post"> 
    <div class="campo">
         <fieldset> 
            <h1>
                <legend>
                    <center>
                        <strong>Consultar Registo Diário Alimentação Centro de Dia</strong>
            </center>
        </h1><br>
            </fieldset>
    </div>  
</form>

<?php 

echo $tabela2; 

?> 

Until the part where I put the time period, everything works fine, but when I consult this time period does not return anything. I think the problem is on the page where I have php, consulta_1.php, but I still can’t find the problem. The console does not return any error.

2 answers

1


After several clarifications on chat, was resolved with the use of Ajax:

$("#feedback_form16").submit(function(e){
   e.preventDefault();
   $.ajax({
       type: "POST",
       url: "./consulta_1",
       data: $(this).serialize(),
       success: function(data) {
         $('#produto_46').html(data);
       }
   });
});

Make a query to the page ./consulta_1 and send the return to the div #produto_46.

0

Your include is missing the php file extension. Try inserting the extension and try again.

  • That’s not the problem, because I use wordpress and in wordpress is how I call the page and not consulta_1.php, because if you do so says that the page does not exist, error 404

  • Right. Print the page query and run it in the database to see if it has results. It may be that the format of your date is different from the default that the seat accepts yyyy-mm-dd

  • if print the page where I have the query returns the query data in the table.

  • Try to force show errors at the beginning of the file. ini_set('display_errors',1); ini_set('display_startup_errors',1); error_reporting(E_ALL);

  • No error returns, I think the problem will be here right at the start if((isset($_POST['inicio'])) && (isset($_POST['fim'])) && (!empty($_POST['inicio'])) && (!empty($_POST['fim']))){$inicio=$_POST['inicio']; $fim=$_POST['fim'];, or is correct

  • Check the post values. You can do this with var_dump($_POST). It is to appear the values when you click on query. Also check if you have not more than once on your page the start and end Names, because if you have it will not work.

  • we can chat?

  • I believe I do not have privilege yet to call on chat. If you manage to call me.

Show 3 more comments

Browser other questions tagged

You are not signed in. Login or sign up in order to post.