er wordt niet getelt !
ik heb een vraagje: ik heb een opteller gemaakt in php en doet het uitstekend !
Maar er wordt niet bij op getelt !?
ik heb de tabel op 0 staan en op het index staat 0.
dan ga ik de index vernieuwen niks aan de hand.
hij telt van 1 naar 2 van 2 naar 3 van 3 naar 4 enz.
totdat hij op een bepaalde hoogte komt en is 9, dan vernieuw ik de pagina weer en dan komt er een 1 te staan.
en dat terwijl mijn database gewoon doortelt naar 10, 11, 12, 13
dit is mijn code die ik gebruik:
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
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
<?php
include_once "scripts/mysql_connect.php";
$resultaat = mysql_query ("UPDATE viewcounter SET `views` = `views`+1 WHERE id='1'");
// FOUTAFHANDELING!
if ($resultaat == false) {
echo 'Fout bij update: '. mysql_error();
}
if (mysql_affected_rows() == 0) {
echo 'Fout bij update: er zijn geen rijen ge-update.';
}
$sql = mysql_query ("SELECT id, pagename, views FROM viewcounter WHERE id='1'");
// FOUTAFHANDELING!
if ($sql == false) {
echo 'Fout bij query: '. mysql_error();
}
while ($row = mysql_fetch_array ($sql)){
$id = $row['id'];
$pagename = $row['pagename'];
$views = $row['views'];
echo "{$views['$sql']} ";
};
?>
include_once "scripts/mysql_connect.php";
$resultaat = mysql_query ("UPDATE viewcounter SET `views` = `views`+1 WHERE id='1'");
// FOUTAFHANDELING!
if ($resultaat == false) {
echo 'Fout bij update: '. mysql_error();
}
if (mysql_affected_rows() == 0) {
echo 'Fout bij update: er zijn geen rijen ge-update.';
}
$sql = mysql_query ("SELECT id, pagename, views FROM viewcounter WHERE id='1'");
// FOUTAFHANDELING!
if ($sql == false) {
echo 'Fout bij query: '. mysql_error();
}
while ($row = mysql_fetch_array ($sql)){
$id = $row['id'];
$pagename = $row['pagename'];
$views = $row['views'];
echo "{$views['$sql']} ";
};
?>
Wat doe ik verkeerd ?
Zou goed moeten gaan, probeer eens de ` weg te halen bij views + 1
En als je de echo nou eens logisch en netjes doet?
Waarom trouwens een while()?
Er is maar één id = 1 neem ik aan.
ja maar er komen er meer
Vincent berger op 28/01/2013 18:29:44:
Dat zou helemaal niet goed moeten gaan. Waarom is $views ineens een array? Waarom staat er niet gewoon:
...
Sorry, ik ben te laat.
Gewijzigd op 28/01/2013 18:50:13 door Ivo Breeden
- SanThe - op 28/01/2013 18:44:26:
Huh ! Hoe kan dat nou weer $views; doet altijd het magische
terwijl mij geleert is "{$views['$sql']} "; omdat het dan extra goed is maar dankzij jouw zouw ik $views; vaker gebruiken !
P.S. Bedankt !
Vincent berger op 28/01/2013 18:50:28:
terwijl mij geleert is "{$views['$sql']} ";
Ik weet niet wie jou dit geleerd heeft, maar die moet zijn schoolgeld maar terug gaan halen.
Waarom de { en } er omheen?
Is $views opeens een array() geworden?
De (eventuele) key staat tussen enkele quotes dus zal letterlijk, dus als $sql, worden gezien.
En stel dat $sql zou worden omgezet naar de waarde die er in zit, dan zit daar een resultaat van een query in, of een false, en niks anders.
Toevoeging op 28/01/2013 19:04:58:
Nog simpeler en niet onnodig een extra variabele aanmaken (kost weer extra geheugen) doe je zo:
merci :D