login  Naam:   Wachtwoord: 
Registreer je!
 Forum

getal gaat niet hoger dan 1 (Opgelost)

Offline larssy1 - 03/05/2009 14:24
Avatar van larssy1MySQL beginner Hey mensen,

Telkens als de bezoeker die template bekijkt, wil ik dat de views met 1 omhoog gaat..

nu gebruik ik deze code.. maar raaar genoeg gaat hij niet hoger dan 1... zien jullie wat ik fout heb gedaan?
  1. mysql_query("UPDATE `free_templates` SET `views`='views'+1 WHERE `id`='".$_GET['tempid']."'") or die (mysql_error());


Mvg
Mij

9 antwoorden

Gesponsorde links
Offline NTS64 - 03/05/2009 14:26
Avatar van NTS64 PHP gevorderde welk type veld is views? Je neemt hiervoor best INT
Offline Daiben - 03/05/2009 14:27
Avatar van Daiben Lid en autoincrement aan? in de tabel
Offline larssy1 - 03/05/2009 14:29 (laatste wijziging 03/05/2009 14:31)
Avatar van larssy1 MySQL beginner @woedie
het is INT met als groote 10 ( INT(10) )

@Daiben
Auto_increment is al in gebruik bij ID
Offline NTS64 - 03/05/2009 14:30 (laatste wijziging 03/05/2009 14:33)
Avatar van NTS64 PHP gevorderde
Daiben schreef:
en autoincrement aan? in de tabel

Dat heeft hier niets mee te maken, auto_increment is een optie die wordt gebruikt om bijvoorbeeld bij het id veld 2 dezelfde waardes te voorkomen. Als je hier auto_increment op 'views' zou instellen, dan zou bij elke insert de waarde van views eentje hoger zijn dan de huidige hoogste waarde. Ik denk niet dat de TS dat wil...


Weet je zeker dat de query elke keer dat de pagina wordt opgevraagd wordt uitgevoerd?

Edit: Ja, toon je php code eens in z'n geheel...
Offline larssy1 - 03/05/2009 14:32 (laatste wijziging 03/05/2009 14:39)
Avatar van larssy1 MySQL beginner Woedi, weet jij wat ik misschien fout heb getypt in de code. of wil je mijn php stukje hebben?

naja, hier gewoon de code 

  1. <?php
  2. include("../includes/config.php");
  3.  
  4.  
  5. $dbres = mysql_query("SELECT * FROM `free_templates` WHERE `id`='".$_GET['tempid']."'") or die (mysql_error());
  6. mysql_query("UPDATE `free_templates` SET `views`='views'+1 WHERE `id`='".$_GET['tempid']."'") or die (mysql_error());
  7.  
  8. for($id=1; $info = mysql_fetch_object($dbres); $id++)
  9. {
  10. echo "<td>";
  11. echo "<font class='style1'>Template Name:</font> $info->name<br />";
  12. echo "<font class='style1'>Views:</font> $info->views<br />";
  13. echo "<font class='style1'>Downloads:</font> $info->downloads<br />";
  14. echo "<font class='style1'>Author:</font> $info->author";
  15. echo "</td>";
  16. }
  17. ?>


en hier de hele pagina:
http://plaatscode.be/136330/
Offline NTS64 - 03/05/2009 14:38
Avatar van NTS64 PHP gevorderde Verander
  1. `views` = 'views' + 1

eens in:
  1. views = views + 1
Offline larssy1 - 03/05/2009 14:39
Avatar van larssy1 MySQL beginner Haha, dat was de oplossing..

waar slaat dat op? 
Offline Filip - 03/05/2009 14:42
Avatar van Filip IRC guru Van die for loop maak je beter een while loop:

  1. while ($info = mysql_fetch_object($dbres))
  2. {
  3. echo "<td>";
  4. echo "<font class='style1'>Template Name:</font> $info->name<br />";
  5. echo "<font class='style1'>Views:</font> $info->views<br />";
  6. echo "<font class='style1'>Downloads:</font> $info->downloads<br />";
  7. echo "<font class='style1'>Author:</font> $info->author";
  8. echo "</td>";
  9. }


En volgens mij zit de fout in dat je views aanspreekt met '' er rond wat er op neer komt dat die dat als string gaat zien.
Offline larssy1 - 03/05/2009 14:43
Avatar van larssy1 MySQL beginner aah ok
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.193s