Goodmorning!

Ik ben bezig met een ifje maar heb geen idee hoe dit precies in zn werk gaat. Tot nu toe heb ik dit:

<body>
<?php
$a = $_POST["gewicht"];
$b = $_POST["prijs"];
if ($a = '100'){ $b * 10 en dan deze waarde in variable zetten}
elseif($a = '200'){ $b * 5 en dan deze waarde in variable zetten}
elseif($a = '500'){ $b * 2 en dan deze waarde in variable zetten}
elseif($a = '1000'){ $b * 1 en dan deze waarde in variable zetten}

?>
<select name="gewicht"> 
<option value="100">100 Gram </option>
<option value="200">200 Gram </option>
<option value="500">500 Gram </option>
<option value="1000">1 KG </option>
</select>
</body>


De bedoeling is dat de prijs wordt doorgerekend naar kiloprijzen. Dus als ik 100 gram invoer dat deze dan wordt doorgerekend naar een kilo en aan de hand daarvan dit in een variabele wordt opgeslagen zodat ik het in de database kan zetten.

Alvast bedankt!
= mag je veranderen in ==.

Wanneer je 1 = gebruikt, geef je $a de waarde 100. En 100 hoor je niet tussen quotes te zetten, het is tenslotte geen string.
Oke dat is duidelijk maar hoe zet ik de uitkomst hiervan in een variabele?

bijv:


if ($a == 100){ $b * 10 = $uitkomst}     


of kan dit niet?
Om het simpel te houden:

<body>
<?php
$a = $_POST["gewicht"];
$b = $_POST["prijs"];
$c = ($b * ($a / 100));
echo 'Totaal: '.$c;
?>
<select name="gewicht"> 
<option value="100">100 Gram </option>
<option value="200">200 Gram </option>
<option value="500">500 Gram </option>
<option value="1000">1 KG </option>
</select>
</body>


Dit zal niet naar behoren werken, maar in die trant zou je een rekensom kunnen maken die de IF'jes overbodig maakt.
andersom
@ Jelle:

Dit klopt dan toch niet?

als ik bijv 1kg aanklik doet die 1000 / 100 is 10 en dan doet die dus 10 keer de prijs. Terwijl ik eigenlijk de prijs keer 10 wil bij 100 gram?

<?php
    if ($a == 100){ 
        $uitkomst = $b * 10;
        }
?>


[edit]
Als ik het goed begrijp sla je de kilo prijzen op, dan kan het bijvoorbeeld ook zo, in jou code is het of 100 gram, of 200 gram, of 500 gram, maar wat nu als je 2*200 gram wil, dan kan je 2 keer de prijs van 200 gram berekenen en die bij elkaar optellen. Of zoals onderstaand dat het gewicht niet uitmaakt:


<?php
    $kiloprijs = 1.68;
    // is gewicht altijd in gram aangegeven, deel die dan door 1000 en ga er dan mee verder rekenen
    $gewicht = 0.2;//200 gram!
    $prijs_product = $gewicht * $kiloprijs;// geeft altijd de goede prijs.
    
?>
<?php
$gewicht = 50; // grammen
$prijs = 1.5;

$prijs_per_gram = ($prijs / $gewicht);

$kg_prijs = $prijs_per_gram * 1000;
echo $kg_prijs;
?>
Nou het is eigenlijk zo dat ik producten uit de supermarkt de prijzen hiervan wil opslaan in een database. Hiervan wordt in de supermarkt meestal de prijs per gewicht gegeven 100 gram / 500 gram / kilo e.d. en nu wil ik dus dat er standaard het kilobedrag wordt berekend... Volgens mij ga je in jou voorbeeld meer uit van een webshop waar iemand iets kan bestellen.
@chris, dat klopt inderdaad, daar was ik vanuit gegaan. Maar dat doet niets af aan dat je eerste methode omslachtig was. Wat Frank nu heeft gedaan is een stuk korter, heeft hetzelfde resultaat als dat van jou, en bovendien hoef je niet voor elke hoeveelheid die bestaat (250 gr. wordt ook wel eens gedaan bijvoorbeeld) een nieuwe if toe te voegen.
Sterker nog, er is helemaal geen if meer nodig voor het bepalen van de kiloprijs.
Oke... maar zoals het er nu staat begrijp ik het een soort van ;) alleen als ik bij dit voorbeeld zoals mijn code nu is een getal achter de komma zoals 0,20 invoer komt er als output 0


<?php

$a = $_POST["gewicht"];
$b = $_POST["prijs"];

    if ($a == 100){ 
        $uitkomst = $b * 10;
        }
    elseif ($a == 200){ 
        $uitkomst = $b * 5;
        }
     elseif ($a == 500){ 
        $uitkomst = $b * 2;
        }     
    else if ($a == 1000){ 
        $uitkomst = $b * 1;
        }
echo "$uitkomst";
?>
<form id="formulier" method="POST" action="<?=$_SERVER['PHP_SELF']?>">

<select name="gewicht"> 
<option value="100">100 Gram </option>
<option value="200">200 Gram </option>
<option value="500">500 Gram </option>
<option value="1000">1 KG </option>
</select>

<input name="prijs" type="text" value="0,00" size="20" maxlength="5">
<input class="button" name="add" type="submit" id="add" value="Invoeren"></td>

</form>

Reageren