基本的php表单帮助

时间:2008-12-04 00:40:51

标签: php forms calculator

我正在尝试制作一个计算器,该计算器将接收用户的输入,并估计如果他们使用各种不同的VoIP服务,他们将节省多少钱。

我已经这样设置了:

<form method="get" action="voip_calculator.php">
  How much is your monthly phone bill? 
    <input name="monthlybill" type="text" value="$" size="8">

  <p><input type="submit" name="Submit" value="Submit">
  </p>
</form>

在voipcalculator.php上,我指向的页面,我想称之为“monthlybill”,但我无法弄清楚如何做到这一点。我也无法弄清楚如何使它对行中的数字进行减法。

这对你来说可能很简单但对我来说非常令人沮丧,我谦虚地要求一些帮助。谢谢!

以下是来自voip_calculator的相关内容,您也可以点击该网址并提交一个数字,以便在(in)操作中查看。我尝试了多次调用它没有成功:

<table width="100%;" border="0" cellspacing="0" cellpadding="0"class="credit_table2" >

<tr class="credit_table2_brd">
    <td class="credit_table2_brd_lbl" width="100px;">Services:</td>
    <td class="credit_table2_brd_lbl" width="120px;">Our Ratings:</td>
    <td class="credit_table2_brd_lbl" width="155px;">Your Annual Savings:</td>
</tr>

Your monthly bill was <?php echo 'monthlybill' ?>

<?php echo "$monthlybill"; ?>
<?php echo "monthlybill"; ?>
<?php echo '$monthlybill'; ?>
<?php echo 'monthlybill'; ?>

<?php
$monthybill="monthlybill";
$re=1;
$offer ='offer'.$re.'name';
$offername= ${$offer};
while($offername!="") {
    $offerlo ='offer'.$re.'logo';
    $offerlogo=${$offerlo};
    $offerli ='offer'.$re.'link';
    $offerlink=${$offerli};
    $offeran ='offer'.$re.'anchor';
    $offeranchor=${$offeran};
    $offerst ='offer'.$re.'star1';
    $offerstar=${$offerst};
    $offerbot='offer'.$re.'bottomline';
    $offerbottomline=${$offerbot};
    $offerca ='offer'.$re.'calcsavings';
    $offercalcsavings=${$offerca};

    echo '<tr >
            <td >
                <a href="'.$offerlink.'" target="blank">
                    <img src="http://www.nextadvisor.com'.$offerlogo.'" alt="'.$offername.'" />
                </a>
            </td>
            <td >
                <span class="rating_text">Rating:</span>
                <span class="star_rating1">
                    <img src="IMAGE'.$offerstar.'" alt="" />
                </span>
                <br />
                <div style="margin-top:5px; color:#0000FF;">
                    <a href="'.$offerlink.'" target="blank">Go to Site</a>
                    <span style="margin:0px 7px 0px 7px;">|</span>
                    <a href="'.$offeranchor.'">Review</a>
                </div>
            </td>
            <td >'.$offercalcsavings.'</td>  
        </tr>';
    $re=$re+1;
    $offer ='offer'.$re.'name';
    $offername= ${$offer};

}
?>

offercal(1,2,3,4,5,6,7)节省调用一个名为values.php的文件,它们的定义如下:

$offer1calcsavings="24.99";
$offer2calcsavings="20.00";
$offer3calcsavings="21.95";
$offer4calcsavings="23.95";
$offer5calcsavings="19.95";
$offer6calcsavings="23.97";
$offer7calcsavings="24.99";

3 个答案:

答案 0 :(得分:1)

我做的一件事就是这个

echo "<pre>";
print_r($_GET);
echo "</pre>";

把它放在接收端的某个地方,你就会明白发生了什么。

答案 1 :(得分:1)

没有为答案提供足够的细节,但让我们简化并假设你在数组中有'储蓄'数字,比如,companySavings。那么,你需要从用户指定的值中减去这些中的每一个吗?你不需要打电话给你(如果你愿意,你可以......)

当用户点击“提交”并再次加载页面时,将月结单拉入var例如。

$monthlyBill = $_GET['monthlybill']; //you should do some checking to prevent attacks but that's another matter

然后,当您构建储蓄列表时,它看起来像这样

    <?php
     //...code for the rest of the page and starting your table

    foreach($companySavings as $savings){//insert each row into the table
      echo("<tr><td>".(comapnyName/Image whatever..)."</td><td>$".$monthlyBill-$savings."</td></tr>);
    }
   //... end the table and rest of code
   ?>

答案 2 :(得分:0)

您需要从QueryString获取值并将其放入PHP变量中。

像这样:

$monthlyBill = $_GET['monthlybill'];

现在变量$ monthlyBill包含QueryString的值。

要显示它:

echo "Your monthly bill is: $monthlyBill";