kostenloser Webspace werbefrei: lima-city


Ajax durchgehendes Refresh funktioniert nicht

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    die-hue

    die-hue hat kostenlosen Webspace.

    Hi,
    ich habe ein Script geschrieben das Namen aktualisieren soll, dieses möchte ich über Ajax andauernd aktualisieren.
    Doch AJAX aktualisiert die Seite nicht.
    PHP Script Code: (Name = play.php)
    $create_array_ticket = mysql_query("SELECT t_number FROM tickets");
    list($ticket) = mysql_fetch_row($create_array_ticket);
    $ticket++;
    $update_ticket = mysql_query("UPDATE tickets SET t_number={$ticket}");
    echo $ticket;

    HTML Code
    <html>
    <head>
    <script src="jquery-1.10.1.min.js" type="text/javascript"></script>
    <script type="text/javascript">
         $(document).ready(function() {
           $("#play").load("play.php"); var refreshId = setInterval(function() { $("#play").load('play.php'); }, 1000);
        });
    </script>
    </head>
    <body>
    <div id="play" style="text-align:center;"></div>
    </body>
    </html>


    Beitrag zuletzt geändert: 19.6.2013 21:13:53 von die-hue
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Was machst du denn mit der refreshId ?
    aus deinem snippet ist das nicht ersichtlich.


    Versuch es mal so
    setInterval(function() {
      // deinCode
     $("#play").load('play.php'); 
    
    }, 1000 * 60 * X); //  X =min


    oder alle 1000 millisekunden wie dein wunsch

    setInterval(function() {
      // deinCode
     $("#play").load('play.php'); 
    
    }, 1000);



    oder


    var refreshId = setInterval("deinefunktion()",1000);
    
    function deinefunktion(){
    
          $("#play").load('play.php'); 
    
    }
    
    // nach logout oder sonstiges
    clearInterval (refreshId); // loescht den interval "refreshId"


    Dein gewünschter Interval ist aber nicht sehr sinnvoll, den bei X usern, legste schnell den Apache durch die massive anzahl der Requests lahm

    Beitrag zuletzt geändert: 20.6.2013 19:07:20 von n0tiert
  4. Hallo,

    dein Code ist richtig gedacht, wird aber in den meisten Fällen nicht funktionieren, später mehr dazu. Vorher solltest du mindestens 10 mal darüber nachdenken, ob diese Funktion sinnvoll ist und nötig ist, ich würde 10:1 wetten, dass dies nicht der Fall ist.

    Um dir das mal vorzustellen, wenn nur 100 user bei dir auf der Website sind erzeugst du 1.000 Anfragen pro Sekunde, wenn das 10 Leute hier bei lima machen, dann sind es schon 10.000 Anfragen, einen kleinen Server kannst du aber schon bei unter 10.000 Anfragen pro Sekunde abschiessen. Ich weiß nicht wie performant die Systeme hier bei lima versorgt sind, aber ich würde dich binnen Stunden sperren wenn du solchen scheiß bei mir abziehen würdest.

    Nun zu deinem Problem, deine Anfragen werden gecacht, das kannst du ändern indem du die Anfragen eindeutig machst, z.B. mit einem timestamp in der Anfrage.

    Mit freundlichen Grüßen
  5. Autor dieses Themas

    die-hue

    die-hue hat kostenlosen Webspace.

    Ok danke, ich habe den Code nur von einem Tutorial kopiert, dann las ich es eben ohne Ajax laufen, danke für die Hilfe :)
  6. die-hue schrieb:
    Ok danke, ich habe den Code nur von einem Tutorial kopiert, dann las ich es eben ohne Ajax laufen, danke für die Hilfe :)


    ajax anticache........

    var refreshId = setInterval("deinefunktion()",1000 * 60 * 1);  // jede minute
    
    function deinefunktion(){
          $.ajax({
                     url: "play.php",
                     cache: false // <-- bewirkt anti cache
          }).done(function( data ) {
                    // antwort in div "play" ausgeben
                    $("#play").html(data);
          });
    }


    Beitrag zuletzt geändert: 20.6.2013 20:00:11 von n0tiert
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!