login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Ledensysteem (Opgelost)

Offline Sieebe - 02/05/2010 22:47
Avatar van SieebeNieuw lid Ondertussen ben ik al vergeraakt in m'n ledensysteem daarom wil ik de mensen die mij geholpen eens bedanken.

Nu ik wil dus dat mijn leden een kleurnaam kunnen kopen met hun coins dus ik doe dit :
  1. <?php
  2.  
  3.  
  4. $query = "SELECT * FROM ledensysteem";
  5.  
  6. $result = mysql_query($query) or die(mysql_error());
  7.  
  8. while($rij = mysql_fetch_assoc($result)){
  9.  
  10. if($rij['tats'] == 5) {
  11.  
  12. $insert = "INSERT * INTO ledensysteem (kleurnaam) VALUES ('1')";
  13. mysql_query($insert) or die(mysql_error());
  14.  
  15.  
  16. }
  17.  
  18.  
  19.  
  20. }


Maar nu wil ik weten hoe je die coins aftrekt uit de database 

11 antwoorden

Gesponsorde links
Offline TotempaaltJ - 02/05/2010 22:49
Avatar van TotempaaltJ PHP interesse Met de MySQL.com: update opdracht.
Offline larssy1 - 02/05/2010 22:54
Avatar van larssy1 MySQL beginner query daarvoor :

mysql_query("UPDATE tabel SET string='$string' WHERE username='lalala'");

:) simpel gezegt
Offline Sieebe - 02/05/2010 23:12
Avatar van Sieebe Nieuw lid Volgens mij doe ik het niet correct 
  1. <?php
  2.  
  3. if($_SESSION['naam'] && $_SESSION['wachtwoord']) {
  4.  
  5.  
  6. include("connect.php");
  7.  
  8. $query = "SELECT * FROM ledensysteem";
  9.  
  10. $result = mysql_query($query) or die(mysql_error());
  11.  
  12. while($rij = mysql_fetch_assoc($result)){
  13.  
  14. $gekocht = $rij['tats'] - 5;
  15.  
  16. $insert = "INSERT INTO ledensysteem (kleurnaam) VALUES ('1') where naam = ".$_SESSION['naam']."";
  17. mysql_query($insert) or die(mysql_error());
  18. echo "Je hebt nu een kleurnaam!";
  19.  
  20. mysql_query("UPDATE ledensysteem SET tats='".$gekocht."' WHERE username='".$_SESSION['naam']."'");
  21.  
  22.  
  23.  
  24.  
  25. }
  26.  
  27. } else { die("Je bent niet ingelogd"); }
  28.  
  29. ?>


Deze error krijg ik ook : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where naam = naam' at line 1
Offline Martijn - 02/05/2010 23:29
Avatar van Martijn Crew PHP singlequotes om je $_SESSION variabel. Doe je uberhautp wel je best om dingen zelf op te zoeken? Dit is de zoveelste vraag die supersimpel zelf op te lossen was.
Offline Sieebe - 03/05/2010 07:25
Avatar van Sieebe Nieuw lid Ok , misschien weer onnodig maar toch snap ik het weer niet 

ik krijg deze error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE naam = 'naam'' at line 1


ik weet dat die makkelijk zou moeten opgelost kunnen worden maarja zoals ik al zei snap ik het niet 

hier de code :

  1. <?php
  2.  
  3. if($_SESSION['naam'] && $_SESSION['wachtwoord']) {
  4.  
  5.  
  6. include("connect.php");
  7.  
  8. $query = "SELECT * FROM ledensysteem";
  9.  
  10. $result = mysql_query($query) or die(mysql_error());
  11.  
  12. while($rij = mysql_fetch_assoc($result)){
  13.  
  14. $naam = $_SESSION['naam'];
  15. $tats = $rij['tats'];
  16.  
  17. $insert = "INSERT INTO ledensysteem (kleurnaam) VALUES(1) WHERE naam = '".$naam."' ";
  18.  
  19. mysql_query($insert) or die(mysql_error());
  20. echo "Je hebt nu een kleurnaam!";
  21.  
  22. mysql_query("UPDATE ledensysteem SET `credits`=`".$tats."`-5 WHERE `naam`='".$naam."'");
  23.  
  24.  
  25.  
  26. }
  27.  
  28. } else { die("Je bent niet ingelogd"); }
  29.  
  30. ?>
Offline jaronneke - 03/05/2010 09:26
Avatar van jaronneke MySQL interesse SET `credits`=`".$tats."`-5

moet zijn

SET credits= '".$tats."-5'
Offline TotempaaltJ - 03/05/2010 12:52
Avatar van TotempaaltJ PHP interesse Het lijkt meer als of je wilt: SET credits = ".$tats-5." Om een integer (cijfer) hoeven geen quotes. Ook zijn de ` niet nodig.
Offline Maarten - 03/05/2010 13:08
Avatar van Maarten Erelid "INSERT INTO x WHERE c = v"

Dat is geen geldige INSERT syntax... als je een INSERT uitvoert maak je een nieuw record aan, dus hoe kan je dan een WHERE-conditie hebben?
Offline urqbz - 03/05/2010 17:40 (laatste wijziging 03/05/2010 17:41)
Avatar van urqbz PHP interesse Inderdaad, dat moet met een UPDATE statement. (het wil nog wel eens handig zijn om, als je dat hebt, je queries met phpmyadmin op te bouwen...)
Offline Sieebe - 03/05/2010 20:02
Avatar van Sieebe Nieuw lid Ik heb nu dit en het werkt perfect alleen een klein probleem hij trekt de credits niet af ik wil dus dat hij er 5 aftrekt voor kleurnaam maar als ik dat doe zoals hierboven gezegd werd komt er te staan : '25-5' en hem moet '20' zijn 

code :

  1. <?php
  2.  
  3. if($_SESSION['naam'] && $_SESSION['wachtwoord']) {
  4.  
  5.  
  6. include("connect.php");
  7.  
  8. $query = "SELECT * FROM ledensysteem";
  9.  
  10. $result = mysql_query($query) or die(mysql_error());
  11.  
  12. while($rij = mysql_fetch_assoc($result)){
  13.  
  14. if($rij['kleurnaam'] == 0) { $naam = $_SESSION['naam'];
  15. $tats = $rij['tats'];
  16.  
  17. mysql_query("UPDATE ledensysteem SET `kleurnaam`='1' WHERE naam='".$naam."'");
  18.  
  19. echo "Je hebt nu een kleurnaam!";
  20.  
  21. mysql_query("UPDATE ledensysteem SET tats='-5' WHERE `naam`='".$naam."'");
  22. }
  23. else {
  24. echo "Je hebt al een kleurnaam!";
  25.  
  26.  
  27.  
  28. }
  29.  
  30. }
  31. } else { die("Je bent niet ingelogd"); }
  32. ?>
Offline jaronneke - 04/05/2010 09:04
Avatar van jaronneke MySQL interesse tats='tats-5'
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.205s