Visualizzazione dei risultati da 1 a 8 su 8

Hybrid View

  1. #1
    Quindi in pratica invece di dargli l'output della tabella in html devo togliere tutto e creare un file PHP che mi genera un Json da cui il datatables andrà a prendersi i dati.. Giusto?
    Se è cosi, mi aspetta un bel lavoro.. Ci saranno circa 25 tabelle da generare..

  2. #2
    Quote Originariamente inviata da Luigi636 Visualizza il messaggio
    Quindi in pratica invece di dargli l'output della tabella in html devo togliere tutto e creare un file PHP che mi genera un Json da cui il datatables andrà a prendersi i dati.. Giusto?
    Se è cosi, mi aspetta un bel lavoro.. Ci saranno circa 25 tabelle da generare..
    si più o meno si.
    bhe cerca creare una funzione js parametrizzata, in cui magari indichi la tabella (SQL) da cui prendere i dati.

    cmq ho visto datables manda parecchi parametri in GET quando fa la richiesta.
    ti scrivo l'esempio php su cui sto lavorando.
    non funziona al 100%, ma domani continuo a lavorarci.

    questo il js:
    codice:
    function dtClassicAjax(id) {
        $(id).dataTable({
            "processing": true,
            "serverSide": true,
            "ajax": 'clienti.php'
        });
    }
    questo il php:
    Codice PHP:
        $start $_GET['start'];
        
    $length $_GET['length'];
        
    $draw $_GET["draw"];
        
    $orderByColumnIndex $_GET['order'][0]['column'];
        
    $orderBy $_GET['columns'][$orderByColumnIndex]['data'];
        
    $orderType $_GET['order'][0]['dir'];
    //    $cmd = 'SELECT * FROM clienti WHERE cliente_clde = "CL" ORDER BY ' . $orderBy . ' ' . $orderType . ' LIMIT ' . $start . ',' . $length;
        
    $cmd 'SELECT * FROM clienti WHERE cliente_clde = "CL" ORDER BY cliente_codice ' $orderType ' LIMIT ' $start ',' $length;

        
    $connessione Connessione::getInstance();
        
    $clienti = new Clienti($connessione);
        
    $columns = array(
            array(
    'db' => 'CODICE''dt' => 0),
            array(
    'db' => 'RAG SOC''dt' => 1),
            array(
    'db' => 'MENM''dt' => 2),
            array(
    'db' => 'PIVA''dt' => 3),
            array(
    'db' => 'EMAIL''dt' => 4),
            array(
    'db' => 'ATTIVO''dt' => 5)
        );
        
    $rows $clienti->getByTipoLimit($cmd);
        
    $out = array();
        foreach (
    $rows as $var) {
            
    $row = array();
            
    $row[$columns[0]['dt']] = $var['cliente_codice'];
            
    $row[$columns[1]['dt']] = $var['cliente_ragsoc'];
            
    $row[$columns[2]['dt']] = $var['cliente_mnemonico'];
            
    $row[$columns[3]['dt']] = $var['cliente_piva'];
            
    $row[$columns[4]['dt']] = $var['cliente_email'];
            
    $row[$columns[5]['dt']] = $var['cliente_attivato'];
            
    $out[] = $row;
        }
        
    $res = array(
            
    "draw" => $draw,
            
    "recordsTotal" => count($rows),
            
    "recordsFiltered" => count($rows),
            
    "data" => $out
        
    );
        echo 
    json_encode($res); 
    i GET arrivano in automatico da datatbles.
    questa la stringa di esempio che arriva al server:
    codice:
    http://.....?draw=1&columns[0][data]=0&columns[0][name]=&columns[0][searchable]=true&columns[0][orderable]=true&columns[0][search][value]=&columns[0][search][regex]=false&columns[1][data]=1&columns[1][name]=&columns[1][searchable]=true&columns[1][orderable]=true&columns[1][search][value]=&columns[1][search][regex]=false&columns[2][data]=2&columns[2][name]=&columns[2][searchable]=true&columns[2][orderable]=true&columns[2][search][value]=&columns[2][search][regex]=false&columns[3][data]=3&columns[3][name]=&columns[3][searchable]=true&columns[3][orderable]=true&columns[3][search][value]=&columns[3][search][regex]=false&columns[4][data]=4&columns[4][name]=&columns[4][searchable]=true&columns[4][orderable]=true&columns[4][search][value]=&columns[4][search][regex]=false&columns[5][data]=5&columns[5][name]=&columns[5][searchable]=true&columns[5][orderable]=true&columns[5][search][value]=&columns[5][search][regex]=false&order[0][column]=0&order[0][dir]=asc&start=0&length=10&search[value]=&search[regex]=false&_=1465832288870

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.