Ir para conteúdo
gust.php

foreach com datatable não funciona

Recommended Posts

Prezados,

Estou tentando usar o datatable com foreach no php e não funciona, ou melhor, funciona quando carrega apenas um registro, se existirem mais registros não funciona, quando recarrego a página para de funcionar tbm.

Podem ajudar?

Estou usando assim:

 


<table class="table table-responsive" id="tableIndexPedido">
                    <thead>
                    <tr>
                      <th>User</th>
                      <th>Data</th>
                      <th>Hora</th>
                      <th>Serviço</th>
                      <th data-priority="1">Açao</th>
                    </tr>
                    </thead>
                <?php foreach ($this->pedido as $p):  ?>
                   
                <tr>
                  <td><?= $p->getUser()->getNome(); ?></td>
                  <td><?= $p->getDATA_INICIO()->format("d/m/Y"); ?></td>
                  <td><?= $p->getHORA_INICIO()->format("H:i"); ?></td>
                  <td><h6><?= \wordwrap($p->getDESCRICAO(), 70, "<br>"); ?></h6></td>
                  <td>
                      <a href="<?= $this->url('servico', array('action' => 'pedidoServico', 'id' => $p->getIDPEDIDO())); ?>"><span class="label label-primary">Confirma</span></a>
                      <a href="<?= $this->url('user', array('action' => 'deletaPedidoServico', 'id' => $p->getIDPEDIDO())); ?>"><span class="label label-danger">Cancela</span></a>
                  
                  </td>
                </tr>
                
                <?php endforeach; ?>
               
              </table>

 


<script>
$(document).ready(function() {
    $('#tableIndexPedido').dataTable({
        "responsive": true,
        "bPaginate": false,
        "ordering": false,
        "info":     false,
        "searching": false,
        "columnDefs": [
            { responsivePriority: 1, targets: 0 },
            { responsivePriority: 2, targets: 4 }

        ]
    } );
} );
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

Primeiro precisamos saber se  o conteúdo de $this->pedido são objetos.
Antes do foreach, coloque:
<?php
echo '<pre>';
var_dump($this->pedido);
echo '</pre>';

E nos mostre o que aparece na tela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opá tetsuo.

 

Sim, são objetos ... No caso, pedido é uma classe na qual eu mando para essa view. Posso ter vários objetos Pedidos() com seus atributos.

 

  pedido1   xxx xxx xxx

 pedido2  xxx xxx xxx

.....

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 13/08/2018 at 13:11, tetsuo disse:

Olá!

Primeiro precisamos saber se  o conteúdo de $this->pedido são objetos.
Antes do foreach, coloque:
<?php
echo '<pre>';
var_dump($this->pedido);
echo '</pre>';

E nos mostre o que aparece na tela.

E agora Tetsuo? Tem como ajudar?

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 Caio_Lourençon
      Olá estou desenvolvendo um projeto utilizando a extensão MySQLi, e nisso aproveitando para utilizar algumas funções orientada a objeto! Gostaria de tirar umas dúvidas em relação a listagem de dados, são duas perguntas:   1) Utilizar a função foreach() ao invés de um while() com a função fetch_array() dentro, tem uma listagem mais rápida ou mais lenta? Pois com ambas consigo trazer os dados, No momento estou utilizando a foreach por ser mais rápida de se digitar.
      2) Utilizo muitas listagens de tabelas diferentes na mesma página sempre chamando um novo SELECT, seria melhor criar uma função com um SELECT dentro para eu sempre reutiliza-lá ou não iria mudar muita coisa em questão de desempenho?
       
      Agradeço qualquer informação.
    • Por gianp
      Prezados, necessito de ajuda!
      Preciso somar os registros da coluna "valor" quando ele for selecionado.
      Exemplo (print):
      Selecionado 2 registros, efetuar a soma, no caso 3.


       
    • Por gianp
      Prezados, necessito de uma ajuda!
      Preciso somar os registros da coluna "valor" quando ele for selecionado.
      Exemplo (print):
      Selecionado 2 registros, efetuar a soma, no caso 3.
       

    • Por Nozaki777
      Preciso disponibilizar uma consulta, dentro de um DataTable. Sendo que os dados listados virá através de um link de API (http://governotransparente.com.br/transparencia/api/v1/json/4393487/pessoas/:nome). Onde "/:nome", tenho que colocar algum nome, e a consulta irá me retornar apenas a lista que contenha o nome que coloquei. Segue a pergunta: como faço para listas todos os dados da tabela, sem especificar nomes, e mostrar esses dados dentro do DataTable?
      Vale ressaltar que o retorno dessa API está no formato json.
    • Por ElytonSilva
      -- Controller Lista os dados do usuário no card public function listardados(){ $matricula = Matricula::where('user_id', Auth::id())->get(); //dd($matricula); return view('dashboard.renovacao.teste', compact( 'matricula')); } -- Controller Salvar os Registros public function store(RenovacaoRequest $request){ $user = Auth()->user(); $dados = $request->all(); $renovacao = Renovacao::create($dados); return view('dashboard.renovacao.confirmacao', compact ('renovacao')); } -- View form @extends('layouts.app') @section('content') <div class="container"> <div class="row"> <form class="form-horizontal " id="regForm" action="{{route('renovacao.store')}}" method="POST"> <div class="card-panel white"> <h4 class="center">Solicitar Renovação</h4> <div class="row"></div> {{ csrf_field()}} <right> <a>**Dados Cadastrados**</a> </right> <div class="row"></div> <div class="row"></div> <div class="row"> @foreach($matricula as $matric) <div class="row"> <div class="col s6 m6"> <div class="input-field {{$errors->has('user_id') ? 'has-error' : ''}} "> <label for="produto">Nome do Pai:</label> <input type="text" class="form-control" name="nomerespo" value="{{ $matric->nomedopai }}"> </div> </div> <div class="col s6 m6"> <div class="input-field {{$errors->has('user_id') ? 'has-error' : ''}} "> <label for="produto">Nome do Aluno(a):</label> <input type="text" class="form-control" name="nomealuno" value="{{ $matric->nomealuno }}"> </div> </div> </div> @endforeach <div class = "row"> <div class="col s12"> <a title="Voltar Para Página Principal" class="btn orange darken-4 btn-info left " href="/admin">Voltar <i class="material-icons left">arrow_back_ios</i> </a> <button type="submit" class="btn orange darken-4 btn-info right">Confirmar <i class="material-icons left">save</i> </button> </div> </div> </div> </div> </form> </div> </div> @endsection No id do usuário ele tem 2 registro só que na hora de salvar ele só salva 1 registro e não os 2 como deveria
      Como Código acima 
       
      Utilizando dd($dados) ;
       
      ele retorna isso e não traz os outros formulários que estava preenchidos que são as mesma coisa 
       
      array:3 [▼
       
      "_token" => "MZOBw295E6W5SEtPPnsvV4seev2GeH3M94rsrI71"
      "nomerespo" => "Mario"
      "nomealuno" => "Maria Joaquina" ]
       
       
       
      1- Ele traz da tabela matricula o user_id relacionado ao usuário logado, automaticamente ele traz e joga no form e nele usuário verificar o nome do responsável e o nome do filho e clica no botão para salvar para confirmar.
      print -> https://prnt.sc/llsn19
       
      2 - Depois que salva o adm vai na aba relatório para verificar se todos os campos foram salvo só que ele só ta salvando o ultimo nome do aluno e do pai queria que salve todos os dados... como estava no primeiro print.
       
      print tela do adm -> https://prnt.sc/llsof3
       
       
×

Informação importante

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