Checken om x tijd

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

- Rob -

- Rob -

10/01/2017 19:36:49
Quote Anchor link
Hallo!
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:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
if (loggedIn() == true) {
  header ('Location: /loggedIn');
}
 
PHP hulp

PHP hulp

19/04/2024 22:26:51
 
- Ariën  -
Beheerder

- Ariën -

10/01/2017 20:12:10
Quote Anchor link
Als je iets a-synchroon wilt laden, dan kan je prima JavaScript met de AJAX-technologie gebruiken.
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.
 
- Rob -

- Rob -

10/01/2017 20:13:31
Quote Anchor link
Heeft u hier toevallig een voorbeeld van? In code
Gewijzigd op 10/01/2017 20:13:56 door - Rob -
 
- Ariën  -
Beheerder

- Ariën -

10/01/2017 20:21:03
Quote Anchor link
Niet zo heel moeilijk het het jQuery-framework, die je op CodeAcademy of W3Schools kan leren. Het script schrijft de uitvoer van script.php elke 30 seconden door naar een HTML element met een id="result", en als dat fout gaat dan laat het daar een foutmelding zien.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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);
                  }    
        });
    }
});

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 -
 
- Rob -

- Rob -

10/01/2017 20:23:05
Quote Anchor link
Kan ik hiermee ook
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
if (loggedIn() == true) {
  header ('Location: /loggedIn');
}
om de x tijd uitvoeren?
 
- Ariën  -
Beheerder

- Ariën -

10/01/2017 20:24:23
Quote Anchor link
Kan, maar lijkt mij onnodig. Ik denk dat je met de kennis van jQuery genoeg in handen hebt.
 
- Rob -

- Rob -

10/01/2017 20:34:55
Quote Anchor link
Ik heb iets met php gemaakt;
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
function d() {
    echo 'd';
}
while (true) {
    d(); // Call your function
    sleep(10);
}

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?
 
- Ariën  -
Beheerder

- Ariën -

10/01/2017 20:43:22
Quote Anchor link
Leuk, maar je hebt daar weinig aan voor jouw praktijk. Ik heb het idee dat je teveel doelstellingen neerzet van theorie waar je nog geen kaas van hebt gegeten.

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 -
 
- Rob -

- Rob -

10/01/2017 20:47:55
Quote Anchor link
Ik ben er al mee gestopt :) Dit wil ik juist graag uitproberen :) And i know, ik leg de lat wat te hoog..

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 :)
 
Marlies Maalderink

Marlies Maalderink

11/01/2017 13:37:35
Quote Anchor link
Als aanvulling, wat wel handig is om te weten is dat PHP een serverside taal is. Dat betekend dat op het moment dat jij de webpagina voor je hebt, er niets aan de pagina kan veranderen door middel van PHP zonder de pagina te reloaden. Alle veranderingen vinden plaats op de server, vóórdat de html getoond wordt aan de gebruiker.

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:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
if (loggedIn() == true) {
  header ('Location: /loggedIn');
}


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.
 
Thomas van den Heuvel

Thomas van den Heuvel

11/01/2017 15:25:00
Quote Anchor link
Daarnaast 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.
 
- Rob -

- Rob -

11/01/2017 18:45:08
Quote Anchor link
Ik had dit even snel geschreven hier, ik zet in mijn code altijd exit();
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.