[PHP] Testo in grassetto quando rilevo modifiche

Discussione in 'PHP' iniziata da Trapano, 21 Ottobre 2018.

  1. Trapano

    Trapano Utente Attivo

    Registrato:
    27 Settembre 2012
    Messaggi:
    238
    Mi Piace Ricevuti:
    0
    Punteggio:
    16
    Sesso:
    Maschio
    Ciao a tutti.
    Ho una paginetta di statistiche che si "refrescia" ogni secondo e mostra il numero di accessi a una 20ina di pagine.
    Vorrei che ad ogni refresh, se un numero cambia, venga visualizzato in neretto, in modo da vererlo subito a colpo d'occhio.

    parte del codice è così:
    PHP:
    echo "Pagina home ";
    include (
    'contatore.txt');
    echo 
    "<br>";
    echo 
    "Pagina due parole ";
    include (
    'contatoreinf.txt');
    echo 
    "<br>";
    echo 
    "Pagina gruppi di facebook ";
    include (
    'contatoregruppi.txt');
    echo 
    "<br>";
    echo 
    "Pagina montaggio quadricottero ";
    include (
    'contatoremontaggio.txt');
    echo 
    "<br>";
    echo 
    "Pagina luoghi visitati ";
    include (
    'contatorestorico.txt');
    echo 
    "<br>";
    echo 
    "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina torre di caprona ";
    include (
    'contatorecaprona.txt');
    echo 
    "<br>";
    echo 
    "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina uliveto  ";
    include (
    'contatoreuliveto.txt');
    echo 
    "<br>";
    echo 
    "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina camugliano ";
    include (
    'contatorecamugliano.txt');
    echo 
    "<br>";
    echo 
    "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina santallago ";
    include (
    'contatoresantallago.txt');
    echo 
    "<br>";
    echo 
    "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina montacchiello ";
    include (
    'contatoremontacchiello.txt');
    echo 
    "<br>";
     
    Ultima modifica di un moderatore: 21 Ottobre 2018
  2. Max 1

    Max 1 Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    29 Febbraio 2012
    Messaggi:
    3.859
    Mi Piace Ricevuti:
    286
    Punteggio:
    83
    Sesso:
    Maschio
    @Trapano
    Da regolamento del forum, come tutti noi sei tenuto ad usare il tag [​IMG] quando posti del codice PHP e il tag [​IMG] per il codice generico, oppure la funzione codice dalla barra degli strumenti
    [​IMG]

    Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
    Grazie
     
  3. macus_adi

    macus_adi Utente Attivo

    Registrato:
    5 Dicembre 2017
    Messaggi:
    963
    Mi Piace Ricevuti:
    56
    Punteggio:
    28
    Sesso:
    Maschio
    Occupazione:
    Developer
    Località:
    L'Aquila
    @Trapano opterei per l'utilizzo del tuo script no con gli include ma con js e underscore (solo per facilitare il lavoro).

    PHP:
    /**
    * Funzione per eseguire il codice di conteggio delle pagine?
    * @param string $page Risultato selezionato o tutte in caso vuoto
    * */
    function get_count_pages($page=''){
        
    //array associativo per memorizzazioni dei dati
        // lo potresti utilizzare anche come base per far rispondere l'app in modo parziale passando solo l'item che ti serve
        
    $contatore=['pagina1'=>'path file.txt da recuperare','pagina2'=>'path file.txt da recuperare','pagina3'=>'path file.txt da recuperare'......,'paginaN'=>'path file.txt da recuperare'];
       
    //eseguo il codice per il conteggio
        
    $result_=[];
        if(
    $page==''){
              foreach(
    $contatore as $key=>$value){
                        
    //invece di includere la pagina recuperi il suo contenuto al tempo Tn
                        
    $result[$key]=file_get_contents($value);
              }
        }else{
               
    //nel caso in cui page non sia vuoto recupero solo il file della pagina richiesta
               
    $result[$page]=file_get_contens($contatore[$page]);
         }
    echo 
    json_encode($result);
    }
    //potresti prevedere un blocco attraverso un parametro in GET o/e POST
    //in questo caso la chiave conta abilita l'esecuzione della funzione
    //mentre pagina abilita il risultato solo di una pagina
    if(isset($_GET['conta'])){
    (isset(
    $_GET['pagina']))?get_count_pages($_GET['pagina']):get_count_pages();
    }
    Nel tuo file index.php e/o cmq nel tuo file dove recuperi i dati potresti fare una cosa del genere....

    Codice:
    .....
    <body>
    
    <div class="container">
    
    //potresti stampare con php i container dei dati tipo:
    <?php
       //è la stessa variabili del file precedente
      $contatore=['pagina1'=>'path file.txt da recuperare','pagina2'=>'path file.txt da recuperare','pagina3'=>'path file.txt da recuperare'......,'paginaN'=>'path file.txt da recuperare'];
       foreach($contatore as $k=>$v){
      
         echo '<div id="'.$k.'_container"><label>'.$k.'</label><div id="'.$k.'" class="my_class" data-val="0"></div></div>';
    
    }
    
    ?>
    
    </div>
    
    
    </body>
    .....
    
    
    
    
    $(document).ready(function(){
    function initPolling(my_polling){
        //preferisco notazione $.ajax
        //recuperto tutti i risultati della nostra pagina creata in precedenza
    setInterval(function(){
         $.get('path_file_appena_scritto.php?conta=1&pagina=home',function(data){
                var obj=$.parseJSON(data);
               //ipotizzo che tu abbia già costruito il template iniziale
              _.each(obj,function(v,k){
                          var local=$('#'+k);
                          local.removeClass('bold');
                          //recupero il valore precedente memorizzato data-val
                          if(parseInt(local.data('val'))!=parseInt(v)){
                                      local.addClass('bold');
                          }
                          local.html(v);
                          local.data('val',v);
               });
         });
    },my_polling);
    
    }
    
    //effettua il polling con l'aggiornamento dei dati ogni secondo e mezzo
    initPolling(1500);
    
    });
    
    La cosa migliore sarebbe utilizzare qualche libreria, tipo underscore citata ma senza esempio....
     
Sto caricando...

Condividi questa Pagina