At 2003-06-01 01:48 -0700, Ralph wrote:
>Maybe it's just that it's late, but can't seem to figure this out. I
>want to show a shipping price depending on the amount of purchase. I
>thought about using a lot of if() statements, but I know this is not the
>best way to go about this.
>
>Can anybody enlighten me on this one and give me a better approach.
>
>Here is an example of my shipping rates:
>
>Less than $20.00 = $7.45 
>$20.01-$35.00 = $8.45 
>$35.01- $55.00 = $9.45 
>$55.01-$80.00 = $10.45 
>$80.01-$100.00 = $11.45 
>$100.01-$150.00 = $13.45 
>$150.01-$200.00 = $15.55 
>$200.01 or more  = $19.45

Besides using a switch statement or a table
you could use a formula.

In your case (and most shipping rate cases
like this) it's probably:

shipping_rate=constant1+amount**constant2

Whereby '**' stands for 'to the power of',
constant2 is somewhere between 0.55 and 0.75
and constant1 should ideally be 0 but you
can raise it to increase the cost per shipment.

If we use constant1=0 and constant2=0.65 we get:

$10  -> $4.47
$20  -> $7.00
$30  -> $9.12
$175 -> $28.70

I propose that if you're interested you write
a small PHP script that let's you experiment
with different constants. You can also build
in a round-up or round-down function to get
nicer results.

BTW. I think it might be better to charge the
actual shipping costs and they are usually
based on the weight of the packages and the
stamps you have to put on them. You'd have
to charge extra for handling of course.

Greetings,
Jaap


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to