login  Naam:   Wachtwoord: 
Registreer je!
 Forum

While Loop

Offline Martijn1989 - 08/05/2005 09:43 (laatste wijziging 08/05/2005 09:44)
Avatar van Martijn1989PHP ver gevorderde Ik ben bezig met een spel, nu ben ik bij de winkel... alleen wil ik dat alle producten worden getoont waarbij cat 1 is... awel... ditis het script en hij geef de fout:

Citaat:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /usr/home/pb2531/domains/profielweb.nl/public_html/site/winkel1.php on line 19


  1. <?php
  2.  
  3. include ("config.php");
  4.  
  5. if ($MEMBER->gebruikersnaam != "") {
  6. $select = "SELECT * FROM leden WHERE gebruikersnaam = '$MEMBER->gebruikersnaam'";
  7. $res = mysql_query($select) or die (mysql_error());
  8. $show = mysql_fetch_object($res);
  9.  
  10. ?>
  11. Leuke hebbedingetjes<br>
  12. Hieronder staat een lijst wat er nog in de winkel is te vinden.<br><br>
  13.  
  14. <?php
  15.  
  16.  
  17. $select2 = "SELECT * FROM winkel ORDER BY prijs WHERE cat='1'";
  18. $query2 = mysql_query($select2);
  19. while($winkel = mysql_fetch_array($query2)) {
  20.  
  21. <table>
  22. <tr><td>Id#</td><td>Naam</td><td>Prijs</td><td>Aantal</td><td>Afbeelding</td><td>Zeldzaam</td><td>Roempunten</td><td>Beschrijving</td></tr>
  23. <tr><td>". $winkel['id'] ."</td><td>". $winkel['naam'] ."</td><td>€ <b>". $winkel['prijs'] .",-</b></td><td>". $winkel['aantal'] ."</td><td></td><td>". $winkel['zeldzaam'] ."</td><td>". $winkel['roempunten'] ."</td><td>". $winkel['beschrijving'] ."</td></tr>
  24. </table>";
  25. }
  26. ?>
  27.  
  28. <?php
  29. } else {
  30. echo "Het is niet mogelijk om gebruik te maken van deze pagina, als je niet bent ingelogd!"; }
  31. ?>

18 antwoorden

Gesponsorde links
Offline Tuinstoel - 08/05/2005 09:49
Avatar van Tuinstoel PHP expert Als hij die error geeft is je query niet goed, werk met if/else constructies en je kunt je dan een hele mooie weergave geven van errors.

Je hebt het WHERE statement verkeerd gebruikt, sla er nog maar eens een tutorial op na.

  1. <?php
  2. $sQuery = "SELECT * FROM `winkel` WHERE `cat` = 1 ORDER BY `prijs` ASC";
  3. if(!$rResource = @mysql_query($sQuery))
  4. { echo 'Gegevens opvragen is niet gelukt!'; }
  5. else
  6. {
  7. while($aRow = mysql_fetch_assoc($rResource))
  8. {
  9. // bla bla bla
  10. }
  11. }
  12. ?>
Offline Martijn1989 - 08/05/2005 09:59 (laatste wijziging 08/05/2005 11:21)
Avatar van Martijn1989 PHP ver gevorderde Ok,.. ik heb een tut van Wmcity, bekeken... maar daardoor krijg ik dezelfde fout :

Edit door Mokka: Hoe durf je naar WMcity te gaan?^^

Citaat:
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /usr/home/pb2531/domains/profielweb.nl/public_html/site/winkel1.php on line 21


Me script :

  1. <?php
  2.  
  3. include ("config.php");
  4.  
  5. if ($MEMBER->gebruikersnaam != "") {
  6. $select = "SELECT * FROM leden WHERE gebruikersnaam = '$MEMBER->gebruikersnaam'";
  7. $res = mysql_query($select) or die (mysql_error());
  8. $show = mysql_fetch_object($res);
  9.  
  10. ?>
  11. Leuke hebbedingetjes<br>
  12. Hieronder staat een lijst wat er nog in de winkel is te vinden.<br><br>
  13.  
  14. <?php
  15. <table>
  16. <tr><td>Id#</td><td>Naam</td><td>Prijs</td><td>Aantal</td><td>Afbeelding</td><td>Zeldzaam</td><td>Roempunten</td><td>Beschrijving</td></tr>
  17. ";
  18.  
  19. $select2 = "SELECT * FROM winkel";
  20. while ($winkel = mysql_fetch_object($select2)) {
  21.  
  22. echo"<tr><td>". $winkel->id ."</td><td>". $winkel->naam ."</td><td>€ <b>". $winkel->prijs .",-</b></td><td>". $winkel->aantal ."</td><td>Afbeelding</td><td>". $winkel->zeldzaam ."</td><td>". $winkel->roempunten ."</td><td>". $winkel->beschrijving ."</td></tr>";
  23. }
  24. echo " </table> ";
  25. ?>
  26.  
  27. <?php
  28. } else {
  29. echo "Het is niet mogelijk om gebruik te maken van deze pagina, als je niet bent ingelogd!"; }
  30. ?>
Offline Martijn1989 - 08/05/2005 10:14 (laatste wijziging 08/05/2005 10:19)
Avatar van Martijn1989 PHP ver gevorderde Ok,.. alls goed en wel.. ik heb tog een tut gevonden op deze site :

  1. <?php
  2. <table>
  3. <tr><td>Id#</td><td>Naam</td><td>Prijs</td><td>Aantal</td><td>Afbeelding</td><td>Zeldzaam</td><td>Roempunten</td><td>Beschrijving</td></tr>
  4. ";
  5.  
  6. $query2 = mysql_query("SELECT * FROM winkel ORDER BY id") or die(mysql_error());
  7. while($winkel = mysql_fetch_assoc($query2))
  8. {
  9. echo"<tr><td>". $winkel['id'] ."</td><td>". $winkel['naam'] ."</td><td>€ <b>". $winkel['prijs'] .",-</b></td><td>". $winkel['aantal'] ."</td><td>Afbeelding</td><td>". $winkel['zeldzaam'] ."</td><td>". $winkel['roempunten'] ."</td><td>". $winkel['beschrijving'] ."</td></tr>";
  10. }
  11. echo " </table> ";
  12. ?>


Maar hoe maak ik hier gebruik van het WHERE statment? waar cat gelijk aan 1 moet zijn : cat='1' ?

tis al gelukt : WHERE cat=1
Offline Tuinstoel - 08/05/2005 10:19
Avatar van Tuinstoel PHP expert Integers (getallen) hoeven nooit in quotes, maar je where statement moet ná het FROM `<tabel>` gedeelte.

http://www.site...amp;id=117

Maar als je nu nog een error krijgt dan moet je eens mysql_error() gebruiken om te kijken wat er mis is met je query, mogelijk is je tabel niet goed.
Offline Martijn1989 - 08/05/2005 10:22 (laatste wijziging 08/05/2005 10:24)
Avatar van Martijn1989 PHP ver gevorderde Ok.. thnx ... ik kan weer lekker door scripten.. al hoewel ik nog wel een vraag heb... denk ff mee 

Ik heb een winkel...
- In de winkel zitten spullen
- Die spullen zitten in een database
- Members moeten die spullen kunnen kopen
- Heb ik dan voor elk product een kolom nodig in de database bij de leden? zo:
Ja - Kan ik die ook aanmaken met iets? *
Nee - Hoe dan :S

* Ja, hoe?
Nee, ok dan moet het dus handmatig?
Offline Simeken - 08/05/2005 10:32
Avatar van Simeken HTML beginner neen, je maakt een tabel producten:

product || gebruiker die het bezit

product 1 || gebruiker
product 2 || gebruiker

als er gekocht wordt moet het ID of naam van de gebruiker toegevoegd worden, waar het product staat dat hij wil kopen,
duidelijk??
Offline Martijn1989 - 08/05/2005 10:34
Avatar van Martijn1989 PHP ver gevorderde Nee, want wat als een product nu 500 keer verkocht mag worden
Offline Tuinstoel - 08/05/2005 10:40
Avatar van Tuinstoel PHP expert Dan zet je een extra kolom erbij `aantal` en dan elke keer als er een verkocht wordt haal je er daar één van af, en als hij op 0 staat dan kun je geen dingen meer kopen, enige logica?
Offline Martijn1989 - 08/05/2005 11:00 (laatste wijziging 08/05/2005 11:18)
Avatar van Martijn1989 PHP ver gevorderde Lol, tuurlijk hehe... dat staat al in winkel maar :


product || gebruiker die het bezit

wekker || gebruiker
tuinset || gebruiker

Martijn heeft een wekker gekocht, Peter heeft een wekker gekocht en

Tuinstoel heeft een tuinset en een wekker gekocht???
Offline nemesiskoen - 08/05/2005 12:12
Avatar van nemesiskoen Gouden medaille

PHP expert
kan j ni beter gewoon een nieuwe tabel maken, die er zo uit ziet


CREATE TABLE gekochte_items(
id INT auto_increment NOT NULL PRIMARY KEY,
id_item INT NOT NULL,
id_bezitter INT NOT NULL
);

en hierin steek je dan het gekochte item id en het id van de bezitter
Offline Martijn1989 - 08/05/2005 12:39
Avatar van Martijn1989 PHP ver gevorderde maar ben je niet bang dat die tabel, te groot word?
Offline Legolas - 08/05/2005 12:44
Avatar van Legolas Onbekend NEE:
er zijn zelfs databases van 3GB, en die werken binnen enkele seconden. Dus die tabel zal misschien hoogstens 1000 records hebben. als je hem lang gebruikt, dan kan het vol worden. daarom de tip. maak nog een veld, dat je noemt: afgehandeld. als iets is afgehandeld, zet hem dan in een andere tabel. zo houd je het een beetje schoon:cool:
Offline Martijn1989 - 08/05/2005 12:45
Avatar van Martijn1989 PHP ver gevorderde wat bedoel je met afgehandeld :S
Offline Legolas - 08/05/2005 12:47
Avatar van Legolas Onbekend als ie de bestelling dus heeft ontvangen (gekocht, en dus nu thuis )
Offline Martijn1989 - 08/05/2005 12:48
Avatar van Martijn1989 PHP ver gevorderde hhmm het is een spel... ;D
Offline Legolas - 08/05/2005 12:52
Avatar van Legolas Onbekend Nou dan nog toch?
Dan is dit toch nog steeds handig:
Citaat:
als ie de bestelling heeft ontvangen, verwijder het uit DB

of ben ik aan het flippen?
Offline Martijn1989 - 08/05/2005 12:55
Avatar van Martijn1989 PHP ver gevorderde ja
Offline riekele - 08/05/2005 12:59
Avatar van riekele PHP beginner ja want dan kan je niet meer onthouden of iemand het product heeft:p
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.236s