Kliks tellen op url
Ik zoek een script dat kliks telt en die ik dan achter de link op de pagina kan weergeven.
-Kinderkleding [3]
Ook moet het mogelijk zijn om bv ieder jaar de kliks op nul te zetten.
Het moet in mijn code passen.
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<?php
//als er op de link geklikt word om meer linken uit die categorie te bekijken laat dan de vervolg pagina zien.
if (isset ($_GET['cat_id']) )
{
//Laat de categorie naam zien boven in de tabel
$sql = "
SELECT c.cat_id, c.cat_naam, l.link_url, l.link_naam
FROM winkel_categorie AS c, winkel_linken AS l
WHERE c.cat_id = " . $_GET['cat_id'] . "
AND c.cat_id = l.cat_id
ORDER BY l.link_naam ASC
";
$res = mysql_query($sql) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
$teller = 0;
$list_completed = false;
while ($row = mysql_fetch_assoc ($res)) {
if ($teller % 10 == 0) {
echo '<ul>';
echo '<li class="kopje">' . $row['cat_naam'] . '</li>' . ENTER ;
}
echo '<li class="link">-' . $row['link_url'] . '</li>' . ENTER;
$list_completed = false;
if ($teller % 10 == 9) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
$list_completed = true;
}
$teller++;
}
if (!$list_completed) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
}
}
else
{
echo '<table align="center"><tr>';
$kolommen = 4;
//Laat de categorie naam zien boven in de tabel
$queryNaam = 'SELECT * FROM winkel_categorie ORDER BY cat_naam';
$resultNaam = mysql_query($queryNaam) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
while ($rowNaam = mysql_fetch_object($resultNaam))
{
//Laat zien hoeveel linken er in die categorie zitten:
$teller = 'SELECT COUNT(link_id) AS teller FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .'';
$resultaatTeller = mysql_query($teller) or die ("Sorry maar kan de teller niet weergeven.");
$laatZienTeller = mysql_fetch_assoc($resultaatTeller);
echo '<td valign="top"><table width="175" align="left" class="tabelborder" cellspacing="0" cellpadding="0">';
echo '<tr>';
echo '<td class="kopje">'.$rowNaam->cat_naam.' <div class="teller"> ' . $laatZienTeller['teller'].'</div>' ;
echo '</td>';
echo '</tr>'.ENTER;
//Laat de linken zien
$queryLink = 'SELECT cat_id,link_url FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .' ORDER BY RAND() LIMIT 0,10';
$resultLink = mysql_query($queryLink) or die ("Sorry maar ik kan de linken van de categorie niet weergeven, probeer het later opnieuw.");
$j = 0;
while ($rowLink = mysql_fetch_object($resultLink))
{
$j++;
echo '<tr>';
echo '<td class="link">-'. $rowLink->link_url.'';
echo '</td>';
echo '</tr>'.ENTER;
if($j == 10){
echo '<tr>';
echo '<td class="meer">';
echo '<a href="index.php?cat_id='.$rowNaam->cat_id.'"><font class="meer">Meer in de categorie '.$rowNaam->cat_naam.' -></font></a>';
echo '</td>';
echo '</tr>';
}
}
echo '</table>'.ENTER;
$counter++;
if($counter==$kolommen)
{
echo '</td></tr></table><table align="center"><tr>';
$counter = 0;
}
}
echo '</td></tr></table>'.ENTER;
}
?>
//als er op de link geklikt word om meer linken uit die categorie te bekijken laat dan de vervolg pagina zien.
if (isset ($_GET['cat_id']) )
{
//Laat de categorie naam zien boven in de tabel
$sql = "
SELECT c.cat_id, c.cat_naam, l.link_url, l.link_naam
FROM winkel_categorie AS c, winkel_linken AS l
WHERE c.cat_id = " . $_GET['cat_id'] . "
AND c.cat_id = l.cat_id
ORDER BY l.link_naam ASC
";
$res = mysql_query($sql) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
$teller = 0;
$list_completed = false;
while ($row = mysql_fetch_assoc ($res)) {
if ($teller % 10 == 0) {
echo '<ul>';
echo '<li class="kopje">' . $row['cat_naam'] . '</li>' . ENTER ;
}
echo '<li class="link">-' . $row['link_url'] . '</li>' . ENTER;
$list_completed = false;
if ($teller % 10 == 9) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
$list_completed = true;
}
$teller++;
}
if (!$list_completed) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
}
}
else
{
echo '<table align="center"><tr>';
$kolommen = 4;
//Laat de categorie naam zien boven in de tabel
$queryNaam = 'SELECT * FROM winkel_categorie ORDER BY cat_naam';
$resultNaam = mysql_query($queryNaam) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
while ($rowNaam = mysql_fetch_object($resultNaam))
{
//Laat zien hoeveel linken er in die categorie zitten:
$teller = 'SELECT COUNT(link_id) AS teller FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .'';
$resultaatTeller = mysql_query($teller) or die ("Sorry maar kan de teller niet weergeven.");
$laatZienTeller = mysql_fetch_assoc($resultaatTeller);
echo '<td valign="top"><table width="175" align="left" class="tabelborder" cellspacing="0" cellpadding="0">';
echo '<tr>';
echo '<td class="kopje">'.$rowNaam->cat_naam.' <div class="teller"> ' . $laatZienTeller['teller'].'</div>' ;
echo '</td>';
echo '</tr>'.ENTER;
//Laat de linken zien
$queryLink = 'SELECT cat_id,link_url FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .' ORDER BY RAND() LIMIT 0,10';
$resultLink = mysql_query($queryLink) or die ("Sorry maar ik kan de linken van de categorie niet weergeven, probeer het later opnieuw.");
$j = 0;
while ($rowLink = mysql_fetch_object($resultLink))
{
$j++;
echo '<tr>';
echo '<td class="link">-'. $rowLink->link_url.'';
echo '</td>';
echo '</tr>'.ENTER;
if($j == 10){
echo '<tr>';
echo '<td class="meer">';
echo '<a href="index.php?cat_id='.$rowNaam->cat_id.'"><font class="meer">Meer in de categorie '.$rowNaam->cat_naam.' -></font></a>';
echo '</td>';
echo '</tr>';
}
}
echo '</table>'.ENTER;
$counter++;
if($counter==$kolommen)
{
echo '</td></tr></table><table align="center"><tr>';
$counter = 0;
}
}
echo '</td></tr></table>'.ENTER;
}
?>
Maar daar snap ik niet veel van hoe je dat in je code moet gebruiken. Daar gebruiken ze een andere manier van linken weergeven.
En waar is de admin eigenlijk voor? Ik vind het nogal moeilijk te begrijpen zonder voorbeeld.
Dit is een voorbeeld van een ander script uit scriptlib, namelijk deze die gebaseerd is op die uit mn eerdere post
edit: Deze kan ook
edit2 je kunt ook nog het linksysteem van phphulp gebruiken, die is hier te vinden
edit: Deze kan ook
edit2 je kunt ook nog het linksysteem van phphulp gebruiken, die is hier te vinden
Gewijzigd op 01/01/1970 01:00:00 door Mark D
Je hoort nog van me :)
Edwin lees dan ziet het er best uit alsof ik dit zou kunnen. Maar dan staat er zoveel commentaar onder dat ik het niet eens meer aandurf.
En die andere eigenlijk ook.
En waarom gebruiken jullie dit:
header("Location: $url");
moet dat als je zo'n script wilt gebruiken?
Heb je misschien een script wat werkt en waarvan de code dan ook goed is aangepast na alle commentaren?
Als ik deze van En die andere eigenlijk ook.
En waarom gebruiken jullie dit:
header("Location: $url");
moet dat als je zo'n script wilt gebruiken?
Heb je misschien een script wat werkt en waarvan de code dan ook goed is aangepast na alle commentaren?
die header dient ervoor als je op een link klikt dat hij eerst optelt in de database en daarna ook daadwerkelijk naar die link gaat.
Ik zou niet weten hoe ik dit in mijn script zou moeten passen.
Die van Bas Kregeler is edit2 is toch wel te gebruiken, alleen de database aanpassen en een paar waardes uit de array aanpassen voor de categorien, of moet je het dan in een of ander lastig systeem verwerken??
Dan je script:
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php
//als er op de link geklikt word om meer linken uit die categorie te bekijken laat dan de vervolg pagina zien.
if (isset ($_GET['cat_id']) )
{
// eerst de teller updaten
$sql = "
UPDATE winkel_linken
SET kliks = kliks + 1
WHERE cat_id = " . $_GET['cat_id'];
if (mysql_query ($sql)) {
trigger_error (mysql_error ());
}
//Laat de categorie naam zien boven in de tabel
$sql = "
SELECT c.cat_id, c.cat_naam, l.link_url, l.link_naam
FROM winkel_categorie AS c, winkel_linken AS l
WHERE c.cat_id = " . $_GET['cat_id'] . "
AND c.cat_id = l.cat_id
ORDER BY l.link_naam ASC
";
$res = mysql_query($sql) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
$teller = 0;
$list_completed = false;
while ($row = mysql_fetch_assoc ($res)) {
if ($teller % 10 == 0) {
echo '<ul>';
echo '<li class="kopje">' . $row['cat_naam'] . '</li>' . ENTER ;
}
echo '<li class="link">-' . $row['link_url'] . '</li>' . ENTER;
$list_completed = false;
if ($teller % 10 == 9) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
$list_completed = true;
}
$teller++;
}
if (!$list_completed) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
}
}
else
{
echo '<table align="center"><tr>';
$kolommen = 4;
//Laat de categorie naam zien boven in de tabel
$queryNaam = 'SELECT * FROM winkel_categorie ORDER BY cat_naam';
$resultNaam = mysql_query($queryNaam) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
while ($rowNaam = mysql_fetch_object($resultNaam))
{
//Laat zien hoeveel linken er in die categorie zitten:
$teller = 'SELECT COUNT(link_id) AS teller FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .'';
$resultaatTeller = mysql_query($teller) or die ("Sorry maar kan de teller niet weergeven.");
$laatZienTeller = mysql_fetch_assoc($resultaatTeller);
echo '<td valign="top"><table width="175" align="left" class="tabelborder" cellspacing="0" cellpadding="0">';
echo '<tr>';
echo '<td class="kopje">'.$rowNaam->cat_naam.' <div class="teller"> ' . $laatZienTeller['teller'].'</div>' ;
echo '</td>';
echo '</tr>'.ENTER;
//Laat de linken zien
$queryLink = 'SELECT cat_id,link_url FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .' ORDER BY RAND() LIMIT 0,10';
$resultLink = mysql_query($queryLink) or die ("Sorry maar ik kan de linken van de categorie niet weergeven, probeer het later opnieuw.");
$j = 0;
while ($rowLink = mysql_fetch_object($resultLink))
{
$j++;
echo '<tr>';
echo '<td class="link">-'. $rowLink->link_url.'';
echo '</td>';
echo '</tr>'.ENTER;
if($j == 10){
echo '<tr>';
echo '<td class="meer">';
echo '<a href="index.php?cat_id='.$rowNaam->cat_id.'"><font class="meer">Meer in de categorie '.$rowNaam->cat_naam.' -></font></a>';
echo '</td>';
echo '</tr>';
}
}
echo '</table>'.ENTER;
$counter++;
if($counter==$kolommen)
{
echo '</td></tr></table><table align="center"><tr>';
$counter = 0;
}
}
echo '</td></tr></table>'.ENTER;
}
?>
//als er op de link geklikt word om meer linken uit die categorie te bekijken laat dan de vervolg pagina zien.
if (isset ($_GET['cat_id']) )
{
// eerst de teller updaten
$sql = "
UPDATE winkel_linken
SET kliks = kliks + 1
WHERE cat_id = " . $_GET['cat_id'];
if (mysql_query ($sql)) {
trigger_error (mysql_error ());
}
//Laat de categorie naam zien boven in de tabel
$sql = "
SELECT c.cat_id, c.cat_naam, l.link_url, l.link_naam
FROM winkel_categorie AS c, winkel_linken AS l
WHERE c.cat_id = " . $_GET['cat_id'] . "
AND c.cat_id = l.cat_id
ORDER BY l.link_naam ASC
";
$res = mysql_query($sql) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
$teller = 0;
$list_completed = false;
while ($row = mysql_fetch_assoc ($res)) {
if ($teller % 10 == 0) {
echo '<ul>';
echo '<li class="kopje">' . $row['cat_naam'] . '</li>' . ENTER ;
}
echo '<li class="link">-' . $row['link_url'] . '</li>' . ENTER;
$list_completed = false;
if ($teller % 10 == 9) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
$list_completed = true;
}
$teller++;
}
if (!$list_completed) {
echo '<li class="leesmeer"><a href="http://www.winkeltop10.nl" target="_parent">Terug</a></li>' . ENTER;
echo '</ul>';
}
}
else
{
echo '<table align="center"><tr>';
$kolommen = 4;
//Laat de categorie naam zien boven in de tabel
$queryNaam = 'SELECT * FROM winkel_categorie ORDER BY cat_naam';
$resultNaam = mysql_query($queryNaam) or die ("Sorry maar ik kan de naam van de categorie niet weergeven, probeer het later opnieuw.");
while ($rowNaam = mysql_fetch_object($resultNaam))
{
//Laat zien hoeveel linken er in die categorie zitten:
$teller = 'SELECT COUNT(link_id) AS teller FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .'';
$resultaatTeller = mysql_query($teller) or die ("Sorry maar kan de teller niet weergeven.");
$laatZienTeller = mysql_fetch_assoc($resultaatTeller);
echo '<td valign="top"><table width="175" align="left" class="tabelborder" cellspacing="0" cellpadding="0">';
echo '<tr>';
echo '<td class="kopje">'.$rowNaam->cat_naam.' <div class="teller"> ' . $laatZienTeller['teller'].'</div>' ;
echo '</td>';
echo '</tr>'.ENTER;
//Laat de linken zien
$queryLink = 'SELECT cat_id,link_url FROM winkel_linken WHERE cat_id = '. $rowNaam->cat_id .' ORDER BY RAND() LIMIT 0,10';
$resultLink = mysql_query($queryLink) or die ("Sorry maar ik kan de linken van de categorie niet weergeven, probeer het later opnieuw.");
$j = 0;
while ($rowLink = mysql_fetch_object($resultLink))
{
$j++;
echo '<tr>';
echo '<td class="link">-'. $rowLink->link_url.'';
echo '</td>';
echo '</tr>'.ENTER;
if($j == 10){
echo '<tr>';
echo '<td class="meer">';
echo '<a href="index.php?cat_id='.$rowNaam->cat_id.'"><font class="meer">Meer in de categorie '.$rowNaam->cat_naam.' -></font></a>';
echo '</td>';
echo '</tr>';
}
}
echo '</table>'.ENTER;
$counter++;
if($counter==$kolommen)
{
echo '</td></tr></table><table align="center"><tr>';
$counter = 0;
}
}
echo '</td></tr></table>'.ENTER;
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
Ja, dat heb ik nu gedaan.
Mooi Elsy. En, heb je er een goed gevoel over?
In mijn voorbeeld staat geen header gedoe en dat heb je volgens mij ook niet nodig.
Nee, het lijkt me erg moeilijk om nu die linken weer anders te maken. Ik bedoel met dat header gedoe.
regel 5 t/m 12
Oke, maar ik zie nergens in de code waar je het stukje voor het kliks tellen hebt staan?
Maar hoe ......ik weet niet hoe ik het moet zeggen hoor....
Je klikt op een link, dan moet daar in die url toch een stukje code zitten zodat hij dat naar de database stuurt.
Oh, je wilt elke specifieke link bijhouden? Ik dacht dat je het per categorie wilde.
Ik wil graag achter iedere link zetten hoeveel kliks die heeft gehad.
-Kinderkleding [3]
-Sokken [6]
-enz
En dan als het mogelijk is bv eens per jaar alles weer op nul zetten.
Daaronder zitten toch per categorie een aantal links?
Is het zo dat het gaat om het veld link_url uit de tabel winkel_linken?