DIV autoreload alle x sec mit Jquery inkl sofortiges Laden

jayplaya1

Mitglied
Hey Leute, mal ne Frage.
Mit Jquery aktualisiere ich ein PHP Script jede Sekunde.
Das läuft soweit auch wunderbar, nur hab ich ein Problem damit.
Wenn ich die Datei Ohne Jquery direkt per include einbinde sind die Werte sofort da,
aber lade ich die Daten mit Jquery, werden sie erst nach einer Sekunde, bzw meine Definierte Zeit angezeigt.
Das nervt ein wenig da, bei aktualisierung der Seite, erstmal immer wieder eine Sekunde vergeht, bis die Daten angezeigt werden.
Das PHP Script zeigt mir praktisch an ob ich neue Post bekommen habe. Und wenn man auf der Seite Navigiert und erst immer wieder eine Sekunde vergeht nervt das. Ich hoffe mal man kann das irgendwie mit Jquery so machen das er das Script sofort ladet und dann jede Sekunde überprüft.
Hier der Jquery Code:
Code:
<script type="text/javascript">
        $(document).ready(function() {
            
    setInterval(function() {
                $('#bnc').load('bnc.php')
            },1000);
        });
        
 </script>

Beste Grüße
 
Wo liegt das Problem die Datei per include einzubinden und gleichzeitig das Skript, um die Werte nach ener Sekunde neu zu laden?

Oder optional (und schlechter) ruf die load Funktion sofort auf:

Javascript:
$(document).ready(function() {
    setInterval(function() {
        $('#bnc').load('bnc.php')
    },1000);

    $('#bnc').load('bnc.php');
});

Aber das ist definitiv keine gute Idee, jede Sekunde neu zu laden.
 
Wie funktioniert denn deine erste Möglichkeit?Ist vielleicht ne doofe Frage, aber ich hab keine Ahnung!
die Jqeury Version wird ja durch ein div aufgerufen. aber das Include halt durch ein Include:)
Code:
<a href=".>Nachrichten</a>

//hier wirds per include aufgerufen ohne aktualisierung
<?php include $_SERVER['DOCUMENT_ROOT'].("bnc.php");?>

<a href=".">Nachrichten</a>

//hier wirds per jquery aufgerufen, aber mit verzögerung
<div id="bnc" ></div>

Also wie schaff ichs die Datei zu includieren und dann alle 5-10 sec zu aktualisieren****
Was wär denn ein guter Zeitbereich für eine Aktualisierung?
 
Ok, bin soebend allein darauf gekommen;) Danke dir für dein "auf die sprünge helfen"
aber noch eine Frage habe ich. Was ist eine gescheite Reloadzeit?


edit
hmmm, scheint doch noch nicht zu funktionieren!! also wie würdest du das machen?

edit#2
doch geht jetzt, aber ist das so der richtige weg?
PHP:
<?php 
	echo'<div id="ibc" >';
		include $_SERVER['DOCUMENT_ROOT'].("ibc.php");
	echo'</div>';
?>
 
Zuletzt bearbeitet:
Was ich damit gemeint hab war einfach:

PHP:
<div id="bnc" ><?php include('bnc.php') ?></div>

Und dein Skript würde dann unverändert bleiben und den Inhalt sekündlich neu laden.


Ich weiß ja nicht, was genau du da vor hast, aber es ist immer eine schlechte Idee ständig beim Server nach neuen Daten zu fragen. Was eine "gescheite" Realodzeit ist, hängt natürlich davon ab, wie oft sich die Daten ändern und wie schnell man Sie dann sehen soll. Und auch davon, wie viele Leute ständig nach neuen Werten fragen.


Zumindest solltest du den Code so ändern, dass die eine Sekunde erst zählt, nach dem vom Server die Antwort kommt. Sollte der Server nämlich mal etwas länger brauchen, sendest du trotzdem ständig weiter Anfragen.

Javascript:
$(document).ready(function() {
    function load_bnc() {
        $('#bnc').load('bnc.php', function() {
            setTimeout(function() {
                load_bnc();
            }, 1000);
        });
    }

    load_bnc();
});
 

Neue Beiträge

Zurück