• Inloggen
  • Registreer
  • Zoeken
Dit topic
  • Overal
  • Dit topic
  • Dit forum
  • Artikelen
  • Pagina's
  • Forum
  • Downloads
  • Meer opties

ICTscripters

Dé plek voor IT

Dé plek voor IT

Aanmelden

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • [Beta] Ottomaan: gratis browserspel met een echte, levende stad. Feedback gezocht!

    frio 27 oktober 2026 om 12:22
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Jeroen.G 26 oktober 2026 om 10:33
  • Maffia Hotel: een browsergame waarin je van lobbygast naar spil van het hotel groeit

    eeyk 22 oktober 2026 om 18:43
  • Crime Club volledig herschreven vanaf nul

    frio 19 oktober 2026 om 23:57
  • Malavita (nieuwe maffia game, van 0)

    jos 19 oktober 2026 om 23:18
  • Herkent deze Notion-structuurscan echte problemen?

    Jeroen.G 19 oktober 2026 om 15:09
  • 🚀 WE ZOEKEN TESTERS! 🚀

    Servertjee 3 oktober 2026 om 10:56
  • Luchtvaartsoftware: Hoe technologie de moderne luchtvaart verandert

    saggy2829 30 september 2026 om 19:31

Marktplaats

  • [Aanbod] Stadskaart voor je browsergame: van menu naar klikbare stad, vanaf €200

    frio 29 oktober 2026 om 18:17
  • [Verkoop] G4G (Gangsters 4 Gangsters): volledige broncode, nieuw gebouwd in PHP 8.3 | € 30 per domein

    frio 27 oktober 2026 om 18:54
  • [TE KOOP] Malavita.be [Maffiaspel, gebaseerd op omicidio.nl, unieke code]

    Dpm_x 26 oktober 2026 om 00:22

Voorraad check fout

  • eeyk
  • 16 november 2012 om 16:18
  • eeyk
    Crime-ware.nl
    Berichten
    1.185
    • 16 november 2012 om 16:18
    • #1

    ik heb een fout in een automatische voorraad check script.
    Als ik 2 de zelfde bestellingen plaats krijgen deze allebei de zelfde code ook als er maar 1 code in voorraad is.

    ziet iemand hoe ik dit kunt oplossen?

    PHP
    <?php
    $dbres	  =	mysql_query("SELECT * FROM `orders` WHERE `verstuurd`='0' AND `ontvangen`='0'");
    while($db = mysql_fetch_object($dbres)){
    
    
    $codes       = mysql_query("SELECT * FROM `voorraad` WHERE `beschikbaar`='1' and `kaart_id`='".mysql_real_escape_string($db->product_id)."' ORDER BY rand() LIMIT 1");
    $retrou = mysql_fetch_object($codes);
    $controlle = mysql_num_rows($codes);
    if($controlle >= "1"){
    mysql_query("UPDATE `orders`   SET `kaart_code`='".mysql_real_escape_string($retrou->kaart_code)."'       WHERE `id`='".mysql_real_escape_string($retrou->id)."'");
    mysql_query("UPDATE `orders`   SET `ontvangen`='1'                                                        WHERE `klant_naam`='".mysql_real_escape_string($db->klant_naam)."' AND `id`='".mysql_real_escape_string($db->id)."'");
    mysql_query("UPDATE `voorraad` SET `beschikbaar`='0'                                                      WHERE `id`='".mysql_real_escape_string($retrou->id)."'");
    mysql_query("UPDATE `voorraad` SET `product_gekocht_door`='".mysql_real_escape_string($db->klant_naam)."' WHERE `id`='".mysql_real_escape_string($retrou->id)."'");
    $naar = $db->klant_email;
    $titel = "Product code : ".$db->product_naam." GameCard winkel";
    $bericht = "
    Hallo ".$dba->klant_naam." Uw bestelling is verwerkt.
    U kunt de code bekijken op de website : http://www.crime-ware.nl/gamecards/index.php
    Als u nog vragen heeft horen wij dit graag u kunt dan contact opnemen met de klantenservice.
    
    
    Let op ! Als een code niet werkt stuur dan de code en uw unieke transactie id naar ons terug;
    Stuur in de e-mail zoveel mogelijk bewijs mee error codes of een foto.
    
    
    Bedankt voor uw bestelling en tot de volgende keer.
    met vriendelijke groet team crime-ware.nl";
    
    
    $headers = "From: <[email protected]>";
    @mail($naar,$titel,$bericht,$headers);	
    mysql_query("UPDATE `orders` SET `verstuurd`='1' WHERE `klant_naam`='".mysql_real_escape_string($db->klant_naam)."' AND `id`='".mysql_real_escape_string($db->id)."'");
    }else{
    
    
    }
    }
    ?>
    Meer tonen

    Ik weet dat het script nog niet veilig en netjes is dit komt omdat ik eerst altijd het script test voor ik het veilig maakt. :thumbup:


    alvast bedankt.


    Het is me gelukt ik had een fout gemaakt met de IDS.

    Bewerkt één keer, laatst door eeyk: gelukt (16 november 2012 om 16:32).

  • Gast, wil je besparen op je domeinnamen? (ad)
  • A.Ruter
    Gevorderd
    Berichten
    460
    • 16 november 2012 om 17:20
    • #2
    Citaat van eeyk

    ik heb een fout in een automatische voorraad check script.
    Als ik 2 de zelfde bestellingen plaats krijgen deze allebei de zelfde code ook als er maar 1 code in voorraad is.

    ziet iemand hoe ik dit kunt oplossen?

    PHP
    ";
    @mail($naar,$titel,$bericht,$headers);	
    mysql_query("UPDATE `orders` SET `verstuurd`='1' WHERE `klant_naam`='".mysql_real_escape_string($db->klant_naam)."' AND `id`='".mysql_real_escape_string($db->id)."'");
    }else{
    
    
    }
    }
    ?>

    Ik weet dat het script nog niet veilig en netjes is dit komt omdat ik eerst altijd het script test voor ik het veilig maakt. :thumbup:


    alvast bedankt.


    Het is me gelukt ik had een fout gemaakt met de IDS.

    Meer tonen


    Beste,

    Vraag even bij een mod om dit topic te sluiten dan.

  • Tim
    Expert
    Berichten
    3.684
    • 16 november 2012 om 17:32
    • #3

    Hallo,

    Wij sluiten topics enkel wanneer dit echt vereist is. Mogelijk dat men met tips kan komen.

    Mvg,
    Tim

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • M.Beers
    Elite members
    Berichten
    460
    • 18 november 2012 om 23:13
    • #4

    Ik denk dat je je queries duidelijker op moet stellen...

    Waarom checkt hij eerst `orders`.`id` met $retrou->id en vervolgens met $db->id?

    Tip: Maak een ERD van je database dan haal je never nooit kolommen meer door elkaar... kost misschien wat tijd om dit uit te zoeken maar je zal er heel veel profijt van hebben omdat alles zwart op wit staat.

    Edit Onderstaand jouw code even aangepast... ik heb werkelijk geen idee wat wat is gezien ik niet weet welke relaties je legt in je database dit zou je nog even moeten controleren... lees de comments en leer ervan ;)

    PHP
    <?php
    $dbres = mysql_query("
    	SELECT 
    		* 
    	FROM 
    		`orders` 
    	WHERE 
    		`verstuurd`='0',
    		`ontvangen`='0'
    ");
    
    
    while($db = mysql_fetch_object($dbres))
    {
    	$codes = mysql_query("SELECT * FROM `voorraad` WHERE `beschikbaar`='1' and `kaart_id`='".mysql_real_escape_string($db->product_id)."' ORDER BY rand() LIMIT 1");
    	$retrou = mysql_fetch_object($codes);
    	$controlle = mysql_num_rows($codes);
    	
    	if($controlle >= "1")
    	{
    		//Variables met vaste waardes boven
    		//Waarom zou je die elke keer opnieuw invoeren voorkomt fouten :)
    		$kaart_code = mysql_real_escape_string($retrou->kaart_code);
    		$klant_id = mysql_real_escape_string($db->id);
    		$klant_naam = mysql_real_escape_string($db->klant_naam);
    	
    		//Eerste 2 queries vereenvoudigd...
    		//Scheelt een hele hoop chaos denk ik zo...
    		mysql_query("
    			UPDATE 
    				`orders`
    			SET
    				`kaart_code` = '{$kaart_code}',
    				`ontvangen` = '1'
    			WHERE
    				`klant_naam` = '{$klant_naam}',
    				`id` => '{$klant_id}'
    		");
    		
    		//Laatste 2 queries vereenvoudigd...
    		mysql_query("
    			UPDATE
    				`voorraad`
    			SET
    				`beschikbaar` = '0',
    				`product_gekocht_door` = '{$klant_naam}'
    			WHERE
    				`id` => '{$klant_id}'
    		");
    		
    		$naar = $db->klant_email;
    		$titel = "Product code : ".$db->product_naam." GameCard winkel";
    		$bericht = "
    		Hallo ".$dba->klant_naam." Uw bestelling is verwerkt.
    		U kunt de code bekijken op de website : http://www.crime-ware.nl/gamecards/index.php
    		Als u nog vragen heeft horen wij dit graag u kunt dan contact opnemen met de klantenservice.
    
    
    		Let op ! Als een code niet werkt stuur dan de code en uw unieke transactie id naar ons terug;
    		Stuur in de e-mail zoveel mogelijk bewijs mee error codes of een foto.
    
    
    		Bedankt voor uw bestelling en tot de volgende keer.
    		met vriendelijke groet team crime-ware.nl";
    
    
    		$headers = "From: <[email protected]>";
    		@mail($naar,$titel,$bericht,$headers);    
    		
    		mysql_query("
    			UPDATE 
    				`orders` 
    			SET 
    				`verstuurd` = '1' 
    			WHERE 
    				`klant_naam` = '{$klant_naam}' AND 
    				`id`='{$klant_id}'
    		");
    	}
    	else
    	{
    
    
    	}
    }
    ?>
    Meer tonen

    Dit was mijn spreekbeurt, zijn er nog vragen?

    Bewerkt 3 keer, laatst door M.Beers (18 november 2012 om 23:21).

Registratie

Nog geen account? Registreer je nu en word deel van onze community!

Nu registreren Aanmelden

ICT Nieuws

  • PHP waarschuwt voor twee ernstige bugs die makkelijk uit te buiten lijken

    Aaron 22 oktober 2026 om 22:19

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacyverklaring
  10. Contact
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design