bazzo Skrevet 28. juni 2004 Del Skrevet 28. juni 2004 (endret) Prøver å summere sammen resultetet fra to funktioner men får det ikke til, noen som kan se over koden min og se hva jeg gjør feil ? Php koden som liksom skal fungere. //Test1 priser $Test1Pris = 100; $Test2Pris = 200; //Ekstra priser $EkstraPris1 = 500; $EkstraPris2 = 600; //Legger sammen Test Priser og Ekstra Priser $SumTest = ifTest_pris($TestSelect); $SumEkstra = ifEkstra_pris($EkstraSelect); $SUM = $SumTest + $SumEkstra ; //Funksjon for Test1 pris function ifTest_pris($TestSelect) { global $Test1Pris,$Test2Pris; if ($TestSelect == "Test1") { echo "$Test1Pris"; } else if ($TestSelect == "Test2") { echo "$Test2Pris"; } } //Funksjon for Ekstra pris function ifEkstra_pris($EkstraSelect) { global $EkstraPris1,$EkstraPris2; if ($EkstraSelect == "Ekstra1") { echo "$EkstraPris1"; } else if ($EkstraSelect == "Ekstra2") { echo "$EkstraPris2"; } } Her er formen <form name="form1" method="post" action="testres.php"> <select name="TestSelect"> <option value="Test1">Test 1</option> <option value="Test2">Test 2</option> </select> <select name="EkstraSelect"> <option value="Ekstra1">Ekstra 1</option> <option value="Ekstra2">Ekstra 2</option> </select> <br> <br> <input type="submit" name="Submit" value="Submit"> </form> Og her skal resultatene komme. <body> <p>Resultat Ekstra Pris: <?php echo ifEkstra_pris($EkstraSelect); ?> </p> <p>Resultat Test Pris: <?php echo ifTest_pris($TestSelect); ?> </p> <p>Sum: <?php echo $SUM ; ?> </p> </body> Dette er resultatet jeg får i IE. 100500 <<<<< HVORFOR SKRIVES DENNE HER ??? Resultat Ekstra Pris: 500 Resultat Test Pris: 100 Sum: 0 Endret 28. juni 2004 av bazzo Lenke til kommentar
kakkle Skrevet 28. juni 2004 Del Skrevet 28. juni 2004 (endret) Bruk return til å returnere verdien i funksjonen. Ved å bare skrive ut verdien med echo, vil ikke resultatet bli returnert. DVS at $sumTest og $sumEkstra ikke vil få noen verdi: function ifTest_pris($TestSelect) { global $Test1Pris,$Test2Pris; if ($TestSelect == "Test1") { return $Test1Pris; } else if ($TestSelect == "Test2") { return $Test2Pris; } } Og det samme på ifEkstraPris Det er forresten derfor du får utskriften 100500 først, fordi når du kaller funksjonen, skriver den alltid ut resultatet: $SumTest = ifTest_pris($TestSelect); // SKRIVER UT 100 $SumEkstra = ifEkstra_pris($EkstraSelect); // SKRIVER UT 500 EDIT: La til hvorfor utskriften 100500 kommer. /Km Endret 28. juni 2004 av kakkle Lenke til kommentar
bazzo Skrevet 28. juni 2004 Forfatter Del Skrevet 28. juni 2004 Fungerte fint det ja, Takker Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå