login  Naam:   Wachtwoord: 
Registreer je!
 Forum

sql query rekenen

Offline fisoes - 21/01/2009 15:08 (laatste wijziging 21/01/2009 15:27)
Avatar van fisoesNieuw lid Hallo

nu ben ik nog bezig met mijn magazijn automatiseren en nu loop ik weer vast op een stukje

ik heb een zoekfunctie voor de artikelen gemaakt en dan bij de resultaten van de zoekfunctie komt er een afboek schermpje erbij waar je het artikelnr moet invullen en het aantal hoeveel je er wil

en dan wil ik dat de query de voorraad afboekt
ik heb nu deze query:
  1. $query1 = "UPDATE voorraad FROM Artikel SET voorraad = (voorraad - '$_POST['voorraad']')";


maar hij geeft een error weer waar ik verder geen raad meer mee weet:
Citaat:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/project/0809-1IPRJ2-groep15/public_html/applicatie/zoek.php on line 109


iemand die me kan helpen?
alvast bedankt



edit antwoord:
  1. $query1 = "UPDATE Artikel SET voorraad = (voorraad - '$_POST[voorraad]')";



Psycho schreef:
Graag UBB gebruiken, is veel overzichtelijker.

7 antwoorden

Gesponsorde links
Offline Ontani - 21/01/2009 15:15
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
Ge gaat geen string van een getal kunnen aftrekken:

  1. $query1 = "UPDATE voorraad FROM Artikel SET voorraad = (voorraad - cast('$_POST['voorraad']' as decimal))";
  2.  
  3. trouwens de code voor een codetag is:
  4. [code]

[/code]
Offline Ibrahim - 21/01/2009 15:28
Avatar van Ibrahim PHP expert Ontani, dat is geen juiste syntax 
Offline Ontani - 21/01/2009 15:29
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
hmmm enkel voor MSSQL dan, sorry.

convert(integer, '". $_POST['voorraad'] ."')
Offline Martijn - 21/01/2009 15:54 (laatste wijziging 21/01/2009 15:55)
Avatar van Martijn Crew PHP
  1. $query1 = "UPDATE Artikel SET voorraad = voorraad - ".$_POST['voorraad'];


die haakjes hoeven helemaal niet. Daarbij moet je ook niet een getal tussen ' zetten, dat is alleen voor tekst zo.
edit: ook je $var escpaen met door ".$var." te doen, en alle tekst dingen in een array moeten ' eromheen
Offline Ontani - 21/01/2009 16:06
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
Tot iemand een letter invult en je pagina volledig crashed. een convert of cast zorgt voor 0 dan
Offline henver - 21/01/2009 16:32
Avatar van henver HTML gevorderde @Ontani: Eerst controleren met PHP of het een getal is...
Offline Martijn - 21/01/2009 16:39
Avatar van Martijn Crew PHP je moet sowieso je input checken. en klaar maken voordat je een query doet. Ik ga er van uit dat dat zelf kan worden gemaakt
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.202s