Checken om x tijd
Hoe kan ik checken of er een update in de database is ZONDER de pagina te reloaden? Als er wel iets geupdate is, of iets nieuws erbij moet er een modal box komen met daarin informatie. Hoe moet dit?
Mvg,
Rob
Toevoeging op 10/01/2017 19:38:04:
En hoe kan ik om de zoveel seconden het volgende script uitvoeren:
Op die manier refresh ik bijvoorbeeld a-synchroon de vertrektijden van de treinen op mijn site. De JavaScript-code (gebruikt jQuery) mag je wel gebruiken.
Gewijzigd op 10/01/2017 20:13:56 door - Rob -
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$(document).ready(function(){
loadData(); // start de functie.
function loadData() {
$.ajax({
url: "script.php",
cache: false,
success: function(html){
$("#result").empty().html(html);
setTimeout(function () {
loadData();
}, 30000); // 30 seconden
},
error:function (xhr, ajaxOptions, thrownError){
$(".result").empty().html('Er is een fout opgetreden:'+ xhr.status + ' '+ thrownError);
}
});
}
});
loadData(); // start de functie.
function loadData() {
$.ajax({
url: "script.php",
cache: false,
success: function(html){
$("#result").empty().html(html);
setTimeout(function () {
loadData();
}, 30000); // 30 seconden
},
error:function (xhr, ajaxOptions, thrownError){
$(".result").empty().html('Er is een fout opgetreden:'+ xhr.status + ' '+ thrownError);
}
});
}
});
LET OP: Vergeet niet de jQuery-library zelf in te voegen in je site.
Gewijzigd op 10/01/2017 20:21:42 door - Ariën -
Kan, maar lijkt mij onnodig. Ik denk dat je met de kennis van jQuery genoeg in handen hebt.
Maar hier laad die de heletijd, en pas na ongeveer 30 seconden runt die de echo..
Toevoeging op 10/01/2017 20:40:16:
Heeft één van jullie misschien een werkend script?
Mijn advies: Focus je maar op één ding, en zeker niet op meerdere dingen. Dan gaat het over PHP, dan JavaScript en dan opeens weer CSS. Op die manier kan je geen goede grip en structuur krijgen. Als ik een goede tip mag geven: Ik zie dat je bezig bent met een Habbo/bank-systeem. Laat dit project even rusten en zet het in de ijskast. De doelstellingen die je bedenkt zijn hoger dan de lat die je nu hebt liggen.
Richt je eerst op één theorie zoals PHP, en ga daarmee aan de slag aan de hand van CodeAcademy. En probeer te begrijpen wat de code doet, speel er mee, en bouw het uit aan de hand van nieuwe geleerde theorie. Op die manier creeer je kleine projectjes waarbij je steeds meer ervaring krijgt. Als je PHP voldoende beheerst dan kan je naar JavaScript kijken en dan bijv. naar je jQuery framework.
Dus begin niet te hoog op de ladder, maar begin onderaan.
Als je er elke dag effectief mee bezig bent, dan zal je zelf meer ervaring en zelfvertrouwen opdoen en over een paar maanden een redelijk CMS-systeem of forum kunnen bouwen. Neem dus de de tijd, oefen veel en verwacht niet dat je alles in een week geleerd hebt.
Gewijzigd op 10/01/2017 20:45:51 door - Ariën -
Toevoeging op 10/01/2017 20:49:41:
Quote:
Ik zie dat je bezig bent met een Habbo/bank-systeem.
Iemand anders maakt het al die er meer verstand van heeft :)
Alle PHP scripts die je hier dus voor bedenkt werken bij voorbaat al niet, omdat die altijd een reload nodig zullen hebben. Je post een paar keer dit stukje code:
Dat kan je gebruiken als je er een javascript aan koppelt dat het uitvoert om de zoveel seconden. Maar dan zal er nog steeds altijd een reload plaats vinden om de zoveel seconden.
Dus mocht je weer eens wat zoeken waarmee je iets kunt doen ZONDER een pagina te reloaden dan kun je dat eigenlijk nooit met PHP oplossen maar zul je altijd met javascript aan de gang moeten.
transporteert header('Location: ...') je niet direct automagisch naar de nieuwe locatie en is om die reden dus meestal ook onveilig zonder een daaropvolgend exit-statement.
Daarnaast Ik had dit even snel geschreven hier, ik zet in mijn code altijd exit();