Avatar billede gedekid Nybegynder
18. oktober 2006 - 10:10 Der er 1 kommentar og
1 løsning

Udregning af pr kvadratmeter

Hej eksperter,

jeg sidder lige med en ting jeg ikke kan hitte ud af. Jeg er blevet præsenteret for et stykke kode der udregninger en pris udfra et antal kvadratmeter. Dette virker super, men jeg har nu fået til opgave at udregne en a'pris af kvadratmeteren. Det kan jeg ikke få den til :(
Den _har_ udregnet en meterpris og ganger så den med arealet, så den burde jo være der, men jeg får ikke postet den pris over på vis_ordre

Håber nogle kan hjælpe.

Her er det vigtige af koden:
-----------------------------------------

        function getPriceWithDelivery($samletareal, $areal, $i, $postnummer) {
            $meterpris = $this->getMPris($samletareal, $i);
            $fragt = $this->getFragtPris($samletareal, $postnummer);
            $pris = ($meterpris*$areal)+$fragt;
            return $pris;
        }
        function getPrice($samletareal, $areal, $i) {
            $meterpris = $this->getMPris($samletareal, $i);
            $pris = ($meterpris*$areal);
            $apris = $meterpris;
            return $pris;
            return $apris;
        }
       
        function getAPrice($samletareal, $areal, $i) {
            $meterpris = $this->getMPris($samletareal, $i);
            $apris = ($meterpris/$areal);
            return $apris;
        }
               
        function getFragtPris($samletareal, $postnummer) {
            if ($postnummer < 5000) {
                $fragtpris = 45;
                $minfragt = 1095;
            }
            else {
                $fragtpris = 18;
                $minfragt = 690;
            }
            $fragt = $samletareal*$fragtpris;
            if ($fragt < $minfragt) $fragt = $minfragt;
            return $fragt;
        }
       
        function getMPris($samletareal, $i) {
                $meterpris = 0;
                switch ($i) {
                    case 1:
                        if ($samletareal < 130) $meterpris = 225;
                        else $meterpris = 203;
                    break;
                    case 2:
                        if ($samletareal < 130) $meterpris = 225;
                        else $meterpris = 203;
                        break;
                    case 3:
                        if ($samletareal < 130) $meterpris = 183;
                        else $meterpris = 165;
                        break;
                    case 4:
                        if ($samletareal < 130) $meterpris = 183;
                        else $meterpris = 165;
                        break;
                    /*case 5:
                        if ($samletareal < 130) $meterpris = 400;
                        else $meterpris = 360;
                        break;*/
                    case 5:
                        if ($samletareal < 130) $meterpris = 145;
                        else $meterpris = 132;
                        break;
                    case 6:
                        if ($samletareal < 130) $meterpris = 272;
                        else $meterpris = 248;
                        break;
                    case 7:
                        if ($samletareal < 130) $meterpris = 289;
                        else $meterpris = 260;
                        break;                       
                    case 8:
                        if ($samletareal < 130) $meterpris = 145;
                        else $meterpris = 132;
                        break;
                    case 9:
                        if ($samletareal < 130) $meterpris = 145;
                        else $meterpris = 132;
                        break;
                    case 10:
                        if ($samletareal < 130) $meterpris = 286;
                        else $meterpris = 258;
                        break;
                    case 11:
                        if ($samletareal < 130) $meterpris = 373;
                        else $meterpris = 336;
                        break;
                }
                return $meterpris;                       
            }
}

class Klinke {
    var $antal;
    var $pris;
    var $name;
    var $areal;
    var $apris;
   
    function Klinke($navn) {
        $this->name = $navn;
        $this->antal = 0;
        $this->pris = 0;
        $this->areal = 0;
    }
}

-----------------------------------------------
Avatar billede gedekid Nybegynder
18. oktober 2006 - 10:26 #1
function getAPrice($samletareal, $areal, $i) {
            $meterpris = $this->getMPris($samletareal, $i);
            $apris = ($meterpris/$areal);
            return $apris;
        }

Dette er selvfølgelig en fejl!
Avatar billede gedekid Nybegynder
18. oktober 2006 - 10:40 #2
Problem solved!!

Skrev dette:

$klinker[$i]->apris = $this->getAPrice($samletareal, $klinker[$i]->areal, $i);
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester