[php] Rekenen met negatieve getallen

Pagina: 1
Acties:
  • 175 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • EnsconcE
  • Registratie: Oktober 2001
  • Laatst online: 19-06 00:07
Ik ben bezig met een webwinkel waarin ik de voorraad wil bij houden. nou heb ik dat zo gedaan dat wanneer men besteld, word het aantal dat men besteld afgetrokken van produkt_voorraad. Als deze 0 is moet het aantal dat men wil bestellen bij produkt_bestellen opgeteld worden zodat ik weet hoeveel ik moet bestellen van een bepaald produkt.

Nu zit ik met het probleem dat als er 5 produkten in produkt_voorraad staan en men besteld er 10, dan moet er 5 van de voorraad worden gehaald en de rest moet bij produkt_bestelling worden opgeteld. Hoe detecteer ik een min getal en ze ik deze vervolgens om in een plus?

Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 11:05
Gewoon controleren hoeveel er in de voorraad is, als dit voldoende is alles van de bestelling uit voorraad halen, als dit te weinig is de voorraad leeghalen en het overgebleven aantal bij te bestellen toevoegen?

Ik zie eerlijk gezegd geen probleem, zeker niet gezien het feit dat je al behoorlijke basiskennis moet hebben om een webwinkel te proggen? Of zie ik iets over het hoofd?

Acties:
  • 0 Henk 'm!

  • EnsconcE
  • Registratie: Oktober 2001
  • Laatst online: 19-06 00:07
ja dat ik niet goed kan rekenen met php, optellen en aftrekken lukt me wel. Maar op het moment dat ik een mingetal heb weet ik niet hoe ik die moet detecteren en omzetten.

[ Voor 5% gewijzigd door EnsconcE op 04-06-2003 12:00 ]


Acties:
  • 0 Henk 'm!

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 18-09 22:59

chem

Reist de wereld rond

ff topictitle fixed

Ik snap verder het probleem niet zo en al helemaal niet waarom je er een extra table voor maakt. Je kan toch gewoon negatieve getallen in je table bijhouden (signed int), en met 1 query alle negatieve-of-0 waardes opzoeken?

Klaar voor een nieuwe uitdaging.


Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 11:05
Even pseudo-code, is dit wat jij bedoelt?

PHP:
1
2
3
4
5
6
7
8
9
$gekocht = 10; // aantal gekochten prods
$voorraad = getVoorraad(); // geeft aantal in voorraad terug
if ($voorraad >= $gekocht) // als er nog genoeg in de voorraad is, verminder alleen voorraad
    verminderVoorraad($gekocht);
else // maak anders voorraad leeg en bereken wat bijbesteld moet worden
{
    leegVoorraad();
    $teBestellen = $gekocht - $voorraad;
}


Dit geeft dan met jouw 5-10-voorbeeld:
code:
1
2
3
4
5
$gekocht = 10;
$voorraad = 5;
!($voorraad  >= $gekocht), dus
    haal voorraad leeg
    $teBestellen = 10 - 5 = 5;

[ Voor 20% gewijzigd door sjroorda op 04-06-2003 12:06 ]


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 18-09 23:16
Een negatief getal omzetten naar een positief is toch gewoon basiskennis wiskunde? Vermenigvuldigen een negatief getal met een ander negatief getal, en je bekomt een positief getal.
Vermenigvuldig een getal met 1, en je krijgt dat getal zelf weer. 1 is dus neutraal als het op vermenigvuldigen aankomt.

Dus, een negatief getal vermenigvuldigen met -1, levert dat zelfde getal als positief op.

Ik geloof dat PHP ook wel een functie zal hebben om een absolute waarde van een getal te returnen.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 11:05
En die functie is abs($x)...

Acties:
  • 0 Henk 'm!

  • EnsconcE
  • Registratie: Oktober 2001
  • Laatst online: 19-06 00:07
sjroorda schreef op 04 juni 2003 @ 12:03:
Even pseudo-code, is dit wat jij bedoelt?

PHP:
1
...


Dit geeft dan met jouw 5-10-voorbeeld:
code:
1
2
3
4
5
$gekocht = 10;
$voorraad = 5;
!($voorraad  >= $gekocht), dus
    haal voorraad leeg
    $teBestellen = 10 - 5 = 5;
kijk hier was ik naar op zoek en dat ik dat zelf nou niet kon maken 8)7
zal wel door de zon komen denk :Z

iig:_/-\o_
Pagina: 1