PHP script teller
Ik heb nog al een specifiek script nodig voor een teller, en ik kom er zelf niet uit! Ik wil voor mijn band dat elke 10de bezoeker op de webpagina een gratis mp3 kan downloaden. Het gaat dan om unieke bezoekers per dag. Ben je bijvoorbeeld de 20ste bezoeker, dan krijg je een berichtje te zien van "gefeliciteerd, je bent de 20ste bezoeker" en ook een link naar de mp3 download. Ben je geen 10de bezoeker (bijvoorbeeld de 27ste) dan krijg je als reactie: "helaas je bent de 27ste bezoeker, probeer het morgen nog eens..." Het liefst ook zo dat de teller na elke dag weer bij 0 begint.
Kan iemand me hiermee helpen? Ik beheers geen MySQL, maar dat heb je voor dit script ook niet nodig lijkt mij.
Alvast bedankt!!!
Kan iemand me hiermee helpen? Ik beheers geen MySQL, maar dat heb je voor dit script ook niet nodig lijkt mij.
Alvast bedankt!!!
Quote:
Kan iemand me hiermee helpen? Ik beheers geen MySQL, maar dat heb je voor dit script ook niet nodig lijkt mij.
Kan iemand me hiermee helpen? Ik beheers geen MySQL, maar dat heb je voor dit script ook niet nodig lijkt mij.
Nou lijkt my anders wel :)
hoeft niet :P
laat me even wat in elkaar knutselen 10 minuten
Hoppa:
ws moet je m nog wat uitbreiden :P
ip adres erbij opslaan enzo
laat me even wat in elkaar knutselen 10 minuten
Hoppa:
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
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
<?php
if(file_exists("mp3teller.txt"))
{
$file = fopen("mp3teller.txt", "r+");
$bezoeken = fgets($file);
$bezoeken++;
rewind($file);
fputs($file, $bezoeken);
fclose($file);
echo $bezoeken;
}
else
{
$file = fopen("mp3teller.txt", "w");
$bezoeken = 1;
fputs($file, $bezoeken);
fclose($file);
}
if(is_int($bezoeken / 10))
{
echo 'Gefeliciteerd! Je bent de 10e bezoeker en hebt een gratis mp3 liedje gewonnen. Download hem <a href="#">hier</a>!';
}
else
{
echo 'Helaas, je hebt niet gewonnen. Probeer het binnenkort nog eens.';
}
?>
if(file_exists("mp3teller.txt"))
{
$file = fopen("mp3teller.txt", "r+");
$bezoeken = fgets($file);
$bezoeken++;
rewind($file);
fputs($file, $bezoeken);
fclose($file);
echo $bezoeken;
}
else
{
$file = fopen("mp3teller.txt", "w");
$bezoeken = 1;
fputs($file, $bezoeken);
fclose($file);
}
if(is_int($bezoeken / 10))
{
echo 'Gefeliciteerd! Je bent de 10e bezoeker en hebt een gratis mp3 liedje gewonnen. Download hem <a href="#">hier</a>!';
}
else
{
echo 'Helaas, je hebt niet gewonnen. Probeer het binnenkort nog eens.';
}
?>
ws moet je m nog wat uitbreiden :P
ip adres erbij opslaan enzo
Gewijzigd op 01/01/1970 01:00:00 door - Ricardo -
haha, bedankt, hier ga ik verder mee aan de slag!
thx!
thx!
Bovenstaand scriptje telt alles en niet alleen de unieke bezoekers.
ja ws moet je een 2e bestand aanmaken met ip + datum en dan checken daarin of dat stukje erin voorkomt
zal ik zo ff maken
zal ik zo ff maken
@Ricardo
Kun je dan ook laten zien hoeveelste bezoeker degene wel is?
dank!
Kun je dan ook laten zien hoeveelste bezoeker degene wel is?
dank!
ok ik ben nog even bezig aan een uitgebreidere versie xd
EDIT:
hoe controleer ik dat of het ip adres al in een bestand voorkomt
zo krijg ik een error dat er geen getallen in mogen:
if(!preg_match($_SERVER['REMOTE_ADDR'].'-'.date("d-m-Y"), $bestand,))
EDIT:
hoe controleer ik dat of het ip adres al in een bestand voorkomt
zo krijg ik een error dat er geen getallen in mogen:
if(!preg_match($_SERVER['REMOTE_ADDR'].'-'.date("d-m-Y"), $bestand,))
Gewijzigd op 01/01/1970 01:00:00 door - Ricardo -
Ik adviseer om op te houden met prutsen met tekstbestandjes en een database te gaan gebruiken.
dit zou moeten 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
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
<?php
$bestand = file_get_contents("ipendatum.txt");
if(strlen($bestand) > 0)
{
$match = strstr($_SERVER['REMOTE_ADDR'], $bestand);
}
if($match == true || !file_exists("ipendatum.txt") || strlen($bestand) < 1)
{
if(file_exists("mp3teller.txt"))
{
$file = fopen("mp3teller.txt", "r+");
$bezoeken = fgets($file);
$bezoeken++;
rewind($file);
fputs($file, $bezoeken);
fclose($file);
}
else
{
$file = fopen("mp3teller.txt", "w");
$bezoeken = 1;
fputs($file, $bezoeken);
fclose($file);
}
if(file_exists("ipendatum.txt"))
{
$file2 = fopen("ipendatum.txt", "r+");
$toevoegen = fgets($file2);
$toevoegen = $toevoegen.' '.$_SERVER['REMOTE_ADDR'].'-'.date("d-m-Y").' ';
rewind($file2);
fputs($file2, $toevoegen);
fclose($file2);
}
else
{
$file2 = fopen("ipendatum.txt", "w");
$toevoegen = $_SERVER['REMOTE_ADDR'].'-'.date("d-m-Y").' ';
fputs($file2, $toevoegen);
fclose($file2);
}
if(is_int($bezoeken / 10))
{
echo 'Gefeliciteerd! Je bent de 10e bezoeker en hebt een gratis mp3 liedje gewonnen. Download hem <a href="#">hier</a>!';
}
else
{
$berekening = $bezoeken - (floor($bezoeken / 10) * 10);
echo 'Helaas, je hebt niet gewonnen. Je bent bezoeker nr: '.$berekening.'. Probeer het binnenkort nog eens.';
}
}
else
{
echo 'Je bent vandaag al eerder op de site geweest, je maakt dus vandaag geen kans meer op het gratis liedje.';
}
?>
$bestand = file_get_contents("ipendatum.txt");
if(strlen($bestand) > 0)
{
$match = strstr($_SERVER['REMOTE_ADDR'], $bestand);
}
if($match == true || !file_exists("ipendatum.txt") || strlen($bestand) < 1)
{
if(file_exists("mp3teller.txt"))
{
$file = fopen("mp3teller.txt", "r+");
$bezoeken = fgets($file);
$bezoeken++;
rewind($file);
fputs($file, $bezoeken);
fclose($file);
}
else
{
$file = fopen("mp3teller.txt", "w");
$bezoeken = 1;
fputs($file, $bezoeken);
fclose($file);
}
if(file_exists("ipendatum.txt"))
{
$file2 = fopen("ipendatum.txt", "r+");
$toevoegen = fgets($file2);
$toevoegen = $toevoegen.' '.$_SERVER['REMOTE_ADDR'].'-'.date("d-m-Y").' ';
rewind($file2);
fputs($file2, $toevoegen);
fclose($file2);
}
else
{
$file2 = fopen("ipendatum.txt", "w");
$toevoegen = $_SERVER['REMOTE_ADDR'].'-'.date("d-m-Y").' ';
fputs($file2, $toevoegen);
fclose($file2);
}
if(is_int($bezoeken / 10))
{
echo 'Gefeliciteerd! Je bent de 10e bezoeker en hebt een gratis mp3 liedje gewonnen. Download hem <a href="#">hier</a>!';
}
else
{
$berekening = $bezoeken - (floor($bezoeken / 10) * 10);
echo 'Helaas, je hebt niet gewonnen. Je bent bezoeker nr: '.$berekening.'. Probeer het binnenkort nog eens.';
}
}
else
{
echo 'Je bent vandaag al eerder op de site geweest, je maakt dus vandaag geen kans meer op het gratis liedje.';
}
?>
Thanks, hier kom ik wel verder mee!
Ja wat Midas zegt, gebruik een database. Vele malen handiger.
Ja, maar ts geeft aan niks van databases te weten.
18 klikken en wat lezen en je komt een heel eind Danny. Geen onnodig vervelende dingen aanleren. En voor vragen is de TS natuurlijk altijd welkom op dit forum :)




