Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 22
  1. #11
    Sì, tenterò di essere il più chiaro possibile.

    Il mio intento era quello di: data una pagina PHP che mi estrae dei valori dal database e me li stampa a video, fare in modo di visualizzare tramite JQuery questi valori sempre aggiornati, visualizzando anche quelli che sono stati aggiunti dopo e che vanno a sommarsi con quelli già presenti nel database; il tutto senza effettuare alcun refresh della pagina, visualizzando i dati in tempo reale.

    Esempio: poniamo caso di avere una pagina PHP denominata visualizza_tutte_le_news.php . Il codice all'interno di questa pagina interroga il database e chiede la visualizzazione di tutte le news presenti all'interno, stampandole a video. Questa pagina naturalmente è collegata ad una ipotetica altra pagina, anche HTML, con all'interno un form che consente di registrare una news nuova all'interno del database, proprio per inserire le nuove news e non visualizzare sempre le stesse. Un classico di inserimento e visualizzazione.
    Ma noi vogliamo che queste news, soprattutto le appena inserite, vengano visualizzate subito senza dover effettuare un continuo e noioso refresh della pagina.

    Supponiamo quindi di avere già realizzato la pagina visualizza_tutte_le_news.php e il form inserisci_una_nuova_notizia.html .
    Si crea la pagina html dalla quale si desidera visualizzare le news sempre aggiornate, senza effettuare alcun refresh ed inseriamo questo codice fra i tag <head></head>:

    Codice PHP:
    <script type="text/javascript">
    $(
    document).ready(function() {
         $(
    "#Miodiv).load("visualizza_tutte_le_news.php");

     setInterval(function() {
        $("
    #Miodiv").load("visualizza_tutte_le_news.php"); }, 1000);

    });


    </script>
    </head>
      <body>
      
    <div id="Miodiv"></div>
      </body>
    </html> 
    In questo modo con setInterval ogni tot di secondi viene ricaricata la pagina all'interno del div senza effettuare alcun refresh.

    Purtroppo non riesco a capire come mai vada su FF e Chrome, ma non su IE che al solito ha dei bug.

    Spero di essere stato chiaro.

    Saluti.

  2. #12
    Ok se ho capito bene nella pagina

    visualizza_tutte_le_news.php

    Ho solamente la query e la stampa dei dati,mentre il form ce l'ho nella pagina html dove tra l'altro vengono fisicamente visualizzati i record o no?

  3. #13
    Originariamente inviato da webking2003
    Ok se ho capito bene nella pagina

    visualizza_tutte_le_news.php

    Ho solamente la query e la stampa dei dati,mentre il form ce l'ho nella pagina html dove tra l'altro vengono fisicamente visualizzati i record o no?
    Il form è il classico form di inserimento:

    Codice PHP:
    <form method="post" action="">
    News:

    <
    textarea name="news"></textarea>
    <
    input type="submit" name="submit" value="Registra news nel db">
    </
    form

  4. #14
    Capito..

    Quindi tu semplicemente carichi inizialmente la pagina php con la funzione .load e così ti estrae i dati in un div preciso e poi con quella funzione che hai scritto ti ricarica il div

    Grazie!

  5. #15
    Scusami se abuso della tua pazienza un'ultima cosa,tu che sei come me un programmatore di php,come hai iniziato a studiare ajax? Hai iniziato con jquery?

  6. #16
    Ho risolto il bug di Internet Explorer. Mentre Firefox è capace di caricare e localizzare determinati div della pagina caricata anche se questa è piena zeppa di immagini o comunque già impostata con un layout, Internet Explorer a quanto pare non riesce. Quindi per far sì che venga visualizzato il contenuto anche in IE, la pagina php caricata deve essere pura. Con solo codice PHP e HTML.

    Per esempio se si stampa a video dentro un div che deve essere individuato per recuperarne il valore è necessario fare così:

    Codice PHP:
    echo "<div id=\"id_da_localizzare\">$row[valore]</div>"
    Naturalmente per recuperare un solo valore della pagina caricata anziché caricare tutto il contenuto è necessario scrivere così:

    Codice PHP:
    .load("pagina.php #miodiv"); 
    se si tratta di un ID. Se di una classe basta sostituire # con .

    Per recuperare più id o classi basta fare così:

    Codice PHP:
    .load("pagina.php #miodiv, #miodiv2, #miodiv3"); 
    e si stampa tutto nel div della pagina. Se volete per esempio separare i valori anziché metterli in un unico div basta scrivere così:

    Codice PHP:
    var contenuto = $("<div />").load("pagina.php #miodiv, #miodv2");
    var 
    miodiv contenuto.find('#miodiv');
    var 
    miodiv2 contenuto.find('#miodiv2');

    $(
    "#miodiv").html(miodiv).append("
    "
    ).append(miodiv2); 
    Per il momento è tutto.

  7. #17
    Originariamente inviato da webking2003
    Scusami se abuso della tua pazienza un'ultima cosa,tu che sei come me un programmatore di php,come hai iniziato a studiare ajax? Hai iniziato con jquery?
    Prima ho studiato Javascript. Poi ho tentato di studiare Ajax ma m'è parso arabo. E quindi su consiglio d'un amico ho studiato JQuery da questo e da altri siti che a quanto pare è di una semplicità e sinteticità unica.

  8. #18
    Ah ok allora vada per JQuery! Comincio da quì poi se vedo che devo approfondire cercherò..Pensa che volevo addirittura comprare il libro "Ajax For Dummies" ..

  9. #19
    Scrivere tutto quel codice Ajax e capirlo quando con due righe di JQuery ottieni lo stesso risultato a mio parere è inutile. E poi con Ajax devi assegnare l'oggetto per tutti i browser. Con JQuery devi scrivere una stringa ed hai finito.

  10. #20

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.