Ankündigung

Einklappen
Keine Ankündigung bisher.

DIV mit PHP-Inhalt alle X Sekunden neuladen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • DIV mit PHP-Inhalt alle X Sekunden neuladen

    Ich möchte, dass ein Div-Container, bzw. ein Teil meiner Seite, der PHP Daten enthält, alle paar Sekunden aktualisiert wird. Das was ich bis jetzt gefunden habe, funktioniert leider nicht mit meinen PHP-Daten Ich hoffe jemand kann es mir verständlich erklären und ich würde mich auch sehr über Code Samples freuen.

    Mit freundlichen Grüßen
    Marcel


  • #2
    Bsp für jQuery

    PHP-Code:
      setInterval(function() {
      
        $.
    ajax({
          
    url:'ajax.php',
          
    type:"POST",
          
    async:true,
          
    data:{},
          
    success:function(data) {

            $(
    "#container").html(data);

          }
        });
                    
      },
    1000); 
    :cookie: ?

    Kommentar


    • #3
      oh wie cool, es klappt! danke, danke, danke...

      Kommentar


      • #4
        Und wenn der Request in die Hose geht, wirst du keinen blassen schimmer haben warum.
        [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

        Kommentar


        • #5
          Unsinniges DoS-Skript..was passiert, wenn der Server länger als 1 sek zum Antworten braucht?

          Lös das doch mit long polling: http://www.php-tagebuch.de/long-poll...-php-tutorial/
          I like cooking my family and my pets.
          Use commas. Don't be a psycho.
          Blog - CoverflowJS

          Kommentar


          • #6
            okay habs selbst nicht gewusst... muss man das timeout in der php.ini dafür hochschrauben? weil nach X Sekunden bricht doch das Script ab, oder?
            :cookie: ?

            Kommentar


            • #7
              http://javascript.info/tutorial/settimeout-setinterval
              oder halt rudygotya link beherzigen.

              Kommentar


              • #8
                Den Link hab ich schon verstanden, habs bisher noch nicht ausprobiert, weil ich zZ keine Verwendung zu hab. Jedoch frag ich mich ob es einen Serverseitigen Timeout gibt, weil diese Schleife nie endet, wenn hier zB keine Nachricht eingeht :P
                :cookie: ?

                Kommentar


                • #9
                  nen serverseitigen timeout, bei nem normalen post request?
                  spontan fällt mir nicht ein, wie man das verhindern kann.

                  Kommentar


                  • #10
                    Ich hab es die letzten Tage versucht zu verstehen, mir einige Videos und Webseiten angeschaut... aber ich verstehe immer noch nicht wie ich Long Polling bei mir einbauen kann.
                    Ich verstehe schon mal, dass Long Polling macht, dass ich statt den Server immer wieder zu fragen, warte bis der Server quasi von sich aus antwortet. Klingt einleuchtend, dass da Ressourcen gespart werden, da bei mir tatsächlich immer wieder erst eine Datenbankverbindung aufgebaut wird und einige SQL Abfragen ablaufen...

                    Code:
                    function checkForNewMessages()
                    {
                        $.ajax({
                            type: "GET",
                            url: "chat.php",
                            timeout: 300000
                        }).done(function(result) {
                            if(result.messageReceived) {
                                ... Nachricht wurde empfangen ...
                            }
                             
                            checkForNewMessages();
                        });
                    };
                     
                    checkForNewMessages();
                    Was wird in der chat.php gemacht/ was ist da? Ist da das Script das ausgeführt werden soll wenn eine neue Nachricht eingegangen ist. Aber wenn, wozu dann die if-Abfrage später. Und "result.messageReceived" wäre bei mir dann wohl

                    PHP-Code:
                    $result mysqli_query("SELECT * FROM buildOrders WHERE villageId = '$villageId'"); 
                    also if (<? echo $result ?>) { <? include("bauschleife.php"); ?> }
                    Wäre das so richtig?

                    Und was soll die timeout Option oben? Will er nach 30 Sekunden einfach mit der Suche "aufgeben"?!

                    Kommentar


                    • #11
                      http://www.zeitoun.net/articles/comet_and_php/start

                      Fertige lib: http://elephant.io/
                      I like cooking my family and my pets.
                      Use commas. Don't be a psycho.
                      Blog - CoverflowJS

                      Kommentar


                      • #12
                        Das verwirrt mich jetzt komplett O.o Und auf eine zusätzliche Library würde ich gerne verzichten.

                        Du schriebst
                        Unsinniges DoS-Skript..was passiert, wenn der Server länger als 1 sek zum Antworten braucht?
                        Was... passiert denn nun wenn der Server länger als 1 sek zum Antworten braucht?

                        Kommentar

                        Lädt...
                        X