Hoe random cijfer bepaalde tijden
Persoonlijk
Arie restens (schuilnaam Gelive maak ik me eigen naam niet bekent.)
Weetje me echte naam wel ? sta ik er op dat je hem niet hier noemt. Waarom? omdat ik gewoon een beetje mijn prive leven wil veilig houden. Dank voor jullie begrip
Leeftijd: 19
Geboren: 12-04-1991
Werk: Hoofdwerk Keukenmonteur maar er komen ook andere dingen voor bij bv Klussen.
Hobby's: Websites creeren/onderhouden, Computers bouwen/reparatie, Design van photography, websites. Buiten hobby's: Motocross, Scooter tuning design en voor verkoop dus geen snelle scooter boy daar heb ik een moter voor.
Voor Websites computers en design heb ik geen scholing gevolgd waarom niet gewoon niet om dat mijn intresses ergens anders lagen dit is puur hobby matig en verdien dus geen rode cent hier aan ik doe het alleen wanneer ik zin heb.
Nou hopelijk genoeg geinformeert.
Nu mijn vraag
Ik weet hoe ik een random getal maak dmv
Maar nu is mijn vraag is het ook mogelijk om een getal een bepaalde tijd te laten zien.
Dus om 1 uur smiddags laat die een getal zien
en om 1:10 uur smiddags laat die weer een ander getal zien
en om 1:20 uur smiddags laat die weer een ander getal zien
maar het getal mag dus niet op lopend zijn en moet dus random zijn
en de tijd van veranderen mag ook niet zichtbaar zijn
VOORBEELD:
We hebben op dit moment 10 bezoekers.
en dan 10 minuten later
We hebben op dit moment 2 bezoekers.
en dan weer 10 minuten later
We hebben op dit moment 15 bezoekers.
Maar dit getal moet om 1 uur niet meer eht zelfde zijn als 1 minuut geleden. dus het getal moet echt random zijn.
Nee ik wil geen fake bezoekers maken dit is maar een voorbeeld. hier wil ik het dus ook absoluut niet voor gebruiken.
Staat dit bericht verkeerd vermoord me niet, verplaats het gewoon en vermeld het svp normaal en niet aanvallend ofso ik kom ook nog maar net kijken en forums zijn altijd even wennen.
Gewijzigd op 10/11/2010 11:50:03 door Peter Dorn
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
session_start();
// aantal seconden
$switchtijd = 5;
$_SESSION['rand'] = isset($_SESSION['rand']) ? $_SESSION['rand'] : rand(10, 100);
$_SESSION['tijd'] = isset($_SESSION['tijd']) ? $_SESSION['tijd'] : time();
$boolean = ($_SESSION['tijd'] + $switchtijd) > time();
$_SESSION['rand'] = $boolean ? $_SESSION['rand'] : rand(10, 100);
$_SESSION['tijd'] = $boolean ? $_SESSION['tijd'] : time();
echo $_SESSION['rand'];
?>
session_start();
// aantal seconden
$switchtijd = 5;
$_SESSION['rand'] = isset($_SESSION['rand']) ? $_SESSION['rand'] : rand(10, 100);
$_SESSION['tijd'] = isset($_SESSION['tijd']) ? $_SESSION['tijd'] : time();
$boolean = ($_SESSION['tijd'] + $switchtijd) > time();
$_SESSION['rand'] = $boolean ? $_SESSION['rand'] : rand(10, 100);
$_SESSION['tijd'] = $boolean ? $_SESSION['tijd'] : time();
echo $_SESSION['rand'];
?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$interval = 10 * 60 // sec
$salt = 34234234234; // Een willekeurig getal
// Maak de seed, gelijk voor elke $interval periode, met 'salt'
$seed = time() - time() % $interval + $salt;
mt_srand($seed);
//Nu kan je elke mt_rand() bewerking doen,
//en die blijft gelijk gedurende $interval sec
[0,1] = mt_rand();
<1,5> = mt_rand(1,5);
$interval = 10 * 60 // sec
$salt = 34234234234; // Een willekeurig getal
// Maak de seed, gelijk voor elke $interval periode, met 'salt'
$seed = time() - time() % $interval + $salt;
mt_srand($seed);
//Nu kan je elke mt_rand() bewerking doen,
//en die blijft gelijk gedurende $interval sec
[0,1] = mt_rand();
<1,5> = mt_rand(1,5);
Parse error: syntax error, unexpected T_VARIABLE in /home/magiknietvertellen.nl/www/test1/index.php on line 10
Gewijzigd op 10/11/2010 09:53:22 door - Dave -
werkt ook niet :O
$switchtijd = 5;
Dus 10 minuten is:
$switchtijd = 600;
Ik weet niet waar hij echt voor is maar even van het voorbeeld uitgegaan. Je kunt nog steeds door de mand vallen als bijvoorbeeld 2 mensen op kantoor/school via hun eigen pc er naar kijken. De waardes zijn namelijk voor iedereen verschillend.
Als je dit niet wilt dan zul je via een database moeten gaan werken.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
#| Session starten.
/*---- LET OP! Zorg er voor dat session_start() boven je HTML staat, output naar de browser vindt hij niet zo leuk. ----*/
session_start();
/*--------------------------------------------------------------------------------------------------------------------------
(§) Settings | Bezoekers aantal.
--------------------------------------------------------------------------------------------------------------------------*/
#| Settings | De interval voor de timer in seconden.
$interval = 600; // 10 Minuten.
#| Settings | Het minimum aantal bezoekers.
$min = 10;
#| Settings | Het maximum aantal bezoekers.
$max = 100;
/*--------------------------------------------------------------------------------------------------------------------------
(§) Bezoekers aantal instellen.
--------------------------------------------------------------------------------------------------------------------------*/
#| Eerst gaan we controleren of $_SESSION['bezoekers'] al bestaat.
if(isset($_SESSION['bezoekers'])){
/*---- INFO: Ja, $_SESSION['bezoekers'] bestaat al. ----*/
#| Dan gaan we nu controleren of de timer is verlopen, we hoeven anders namelijk niets te doen.
if(time() >= $_SESSION['bezoekers']['timer']){
/*---- INFO: Ja, de timer is verlopen. ----*/
#| Dan gaan we nu de timer + bezoekers aantal opnieuw instellen.
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
}
else{
/*---- INFO: Helaas! $_SESSION['bezoekers'] bestaat nog niet, deze gaan we nu voor de eerste keer aanmaken. ----*/
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
?>
#| Session starten.
/*---- LET OP! Zorg er voor dat session_start() boven je HTML staat, output naar de browser vindt hij niet zo leuk. ----*/
session_start();
/*--------------------------------------------------------------------------------------------------------------------------
(§) Settings | Bezoekers aantal.
--------------------------------------------------------------------------------------------------------------------------*/
#| Settings | De interval voor de timer in seconden.
$interval = 600; // 10 Minuten.
#| Settings | Het minimum aantal bezoekers.
$min = 10;
#| Settings | Het maximum aantal bezoekers.
$max = 100;
/*--------------------------------------------------------------------------------------------------------------------------
(§) Bezoekers aantal instellen.
--------------------------------------------------------------------------------------------------------------------------*/
#| Eerst gaan we controleren of $_SESSION['bezoekers'] al bestaat.
if(isset($_SESSION['bezoekers'])){
/*---- INFO: Ja, $_SESSION['bezoekers'] bestaat al. ----*/
#| Dan gaan we nu controleren of de timer is verlopen, we hoeven anders namelijk niets te doen.
if(time() >= $_SESSION['bezoekers']['timer']){
/*---- INFO: Ja, de timer is verlopen. ----*/
#| Dan gaan we nu de timer + bezoekers aantal opnieuw instellen.
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
}
else{
/*---- INFO: Helaas! $_SESSION['bezoekers'] bestaat nog niet, deze gaan we nu voor de eerste keer aanmaken. ----*/
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
?>
Het aantal bezoekers kun je ophalen met.
Het script gebruikt de tijd van de server waar de website op draait.
en het cijfer mag neit veranderen met f5 of vernieuwen.
het moet gewoon om de 10 minuten een ander getal zijn maar wel random ja het is moeilijk ik weet het :P
En nee het is niet moeilijk alleen hebben we hier te maken met een communicatie fout zo te zien.
Je kunt op f5 drukken zo vaak als je wilt maar het getal zal er echt niet door veranderen aangezien het getal opgeslagen is in een sessie. Als je de browser afsluit ben je het getal wel natuurlijk kwijt.
Ik gebruik het script van jou/u
als ik dan op f5 drukt dan verandert echt het getal hoor
Ik bedoel ik kom op een site en er staat:
''we hebben op dit moment 30 bezoekers, Deze bezoekers statestieken worden om de 10 minuten vernieuwd''
Maar het getal moet wel random zijn. ja vreselijk ben ik met uit leggen excuses :P
Anway, Ik gok dat je ergens iets verkeerd hebt staan.
Sla onderstaande eens als een nieuw bestand op om te testen. hij staat ingesteld op 1 minuut en niet 10. Anders duurt het zo lang.
Let ook even op de volgorde, Als je mijn php script in de body hebt geplakt werkt het inderdaad niet en zou je een error moeten zien eigenlijk. Dat is wat ik gok dat je gedaan hebt.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
#| Session starten.
/*---- LET OP! Zorg er voor dat session_start() boven je HTML staat, output naar de browser vindt hij niet zo leuk. ----*/
session_start();
/*--------------------------------------------------------------------------------------------------------------------------
(§) Settings | Bezoekers aantal.
--------------------------------------------------------------------------------------------------------------------------*/
#| Settings | De interval voor de timer in seconden.
$interval = 60; // 1 Minuten.
#| Settings | Het minimum aantal bezoekers.
$min = 10;
#| Settings | Het maximum aantal bezoekers.
$max = 100;
/*--------------------------------------------------------------------------------------------------------------------------
(§) Bezoekers aantal instellen.
--------------------------------------------------------------------------------------------------------------------------*/
#| Eerst gaan we controleren of $_SESSION['bezoekers'] al bestaat.
if(isset($_SESSION['bezoekers'])){
/*---- INFO: Ja, $_SESSION['bezoekers'] bestaat al. ----*/
#| Dan gaan we nu controleren of de timer is verlopen, we hoeven anders namelijk niets te doen.
if(time() >= $_SESSION['bezoekers']['timer']){
/*---- INFO: Ja, de timer is verlopen. ----*/
#| Dan gaan we nu de timer + bezoekers aantal opnieuw instellen.
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
}
else{
/*---- INFO: Helaas! $_SESSION['bezoekers'] bestaat nog niet, deze gaan we nu voor de eerste keer aanmaken. ----*/
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
</head>
<body>
Bezoekers: <?php echo $_SESSION['bezoekers']['aantal']; ?>
</body>
</html>
#| Session starten.
/*---- LET OP! Zorg er voor dat session_start() boven je HTML staat, output naar de browser vindt hij niet zo leuk. ----*/
session_start();
/*--------------------------------------------------------------------------------------------------------------------------
(§) Settings | Bezoekers aantal.
--------------------------------------------------------------------------------------------------------------------------*/
#| Settings | De interval voor de timer in seconden.
$interval = 60; // 1 Minuten.
#| Settings | Het minimum aantal bezoekers.
$min = 10;
#| Settings | Het maximum aantal bezoekers.
$max = 100;
/*--------------------------------------------------------------------------------------------------------------------------
(§) Bezoekers aantal instellen.
--------------------------------------------------------------------------------------------------------------------------*/
#| Eerst gaan we controleren of $_SESSION['bezoekers'] al bestaat.
if(isset($_SESSION['bezoekers'])){
/*---- INFO: Ja, $_SESSION['bezoekers'] bestaat al. ----*/
#| Dan gaan we nu controleren of de timer is verlopen, we hoeven anders namelijk niets te doen.
if(time() >= $_SESSION['bezoekers']['timer']){
/*---- INFO: Ja, de timer is verlopen. ----*/
#| Dan gaan we nu de timer + bezoekers aantal opnieuw instellen.
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
}
else{
/*---- INFO: Helaas! $_SESSION['bezoekers'] bestaat nog niet, deze gaan we nu voor de eerste keer aanmaken. ----*/
$_SESSION['bezoekers'] = array('aantal' => rand($min, $max) , 'timer' => time() + $interval);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
</head>
<body>
Bezoekers: <?php echo $_SESSION['bezoekers']['aantal']; ?>
</body>
</html>
Gewijzigd op 10/11/2010 15:14:14 door - Mark -
wat een top service hier geen chagereinige mensen wat je op de meeste forums tegen komt
Als je op alle peecees hetzelfde wil zien zal je toch met een klein database tabelletje moeten werken en daar een getal en de tijd in zetten. Bij elke nieuwe pagina aftesten en als de 10 min tijd om is even random een nieuw getal en de tijd erin zetten. Alleen dan heb je voor iedereen hetzelfde.
:p dat heb ik in mijn eerste post ook al geschreven maar daar is of over heen gelezen of het maakt niet uit.
daar is zeker neit over heen gelezen maar kan je daar ook random getallen laten zien ? op bepaalde tijden ? dan zou ik daar wel intresse naar hebben maari k heb geen koek gegeten van databases maar ik ben wel bereid om het te proberen met uitleg van jullie
kijk eens op http://www.phptuts.nl daar staan een aantal leuke tutorials op. Kijk dan wel gelijk naar MySQLi of PDO voor het MySQL gedeelte.