er wordt niet getelt !

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Vincent berger

vincent berger

28/01/2013 18:29:44
Quote Anchor link
Hallo,

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)
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
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']} ";
};

?>




Wat doe ik verkeerd ?
 
PHP hulp

PHP hulp

20/04/2024 09:33:39
 
Moose -

Moose -

28/01/2013 18:33:30
Quote Anchor link
Zou goed moeten gaan, probeer eens de ` weg te halen bij views + 1
 
- SanThe -

- SanThe -

28/01/2013 18:44:26
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
  $views
= $row['views'];
  echo "{$views['$sql']} ";
?>


En als je de echo nou eens logisch en netjes doet?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
  $views
= $row['views'];
  echo $views;
?>


Waarom trouwens een while()?
Er is maar één id = 1 neem ik aan.
 
Vincent berger

vincent berger

28/01/2013 18:47:55
Quote Anchor link
ja maar er komen er meer
 
Ivo Breeden

Ivo Breeden

28/01/2013 18:48:42
Quote Anchor link
Vincent berger op 28/01/2013 18:29:44:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
  // ...
  echo "{$views['$sql']} ";
  // ...
};
?>

Dat zou helemaal niet goed moeten gaan. Waarom is $views ineens een array? Waarom staat er niet gewoon:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
  //
  echo $views;
  //
?>


...
Sorry, ik ben te laat.
Gewijzigd op 28/01/2013 18:50:13 door Ivo Breeden
 
Vincent berger

vincent berger

28/01/2013 18:50:28
Quote Anchor link
- SanThe - op 28/01/2013 18:44:26:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
  $views
= $row['views'];
  echo "{$views['$sql']} ";
?>


En als je de echo nou eens logisch en netjes doet?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
  $views
= $row['views'];
  echo $views;
?>


Waarom trouwens een while()?
Er is maar één id = 1 neem ik aan.


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 !
 
- SanThe -

- SanThe -

28/01/2013 18:57:24
Quote Anchor link
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:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
  $views
= $row['views'];
  echo $views;
?>


Nog simpeler en niet onnodig een extra variabele aanmaken (kost weer extra geheugen) doe je zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
  echo $row['views'];
?>
 
Vincent berger

vincent berger

28/01/2013 19:08:49
Quote Anchor link
ja oke er lijden meerdere wegen naar php :P

merci :D
 



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.