如何捕获属于同一组的项目的不同值

时间:2014-08-05 03:40:33

标签: php mysql

我有一个表来显示数据库中的Addon项目。

用户必须选中前两项的复选框:gpsbabyseat

因此,depositpriceperday会在复选框的add_item[]内捕获。

但第三项是司机,那里没有存款或价格,但每小时的价格。

所以我给出了两个单选按钮,分别是:每8小时费率一个另一个小时费率

问题是它捕获了两个速率,但我只想要记录单选按钮的一个值。

这是表格:

<table border="1" style="border-collapse: collapse;margin-top: 20px;">
    <tr>
        <th>AddOns</th>
        <th>Deposit</th>
        <th>PricePerDay</th>
        <th>Price per 8th Hour</th>
        <th>Price per 16th Hour</th>
        <th></th>
    </tr>

    <?php
    while($row_addon=mysql_fetch_array($result_addon))
    {
        $add_on_id=$row_addon['addOns_id'];
        $add_on=$row_addon['addOns'];
        $deposit=$row_addon['Deposit'];
        $ppd=$row_addon['PricePerDay'];
        $pp8=$row_addon['PricePer8thHour'];
        $pp16=$row_addon['PricePer16thHour'];
        $status=$row_addon['status'];
    ?>

    <tr>
        <td><input type="hidden" name="add_name" value=""><?php echo $add_on;?></td>
        <td><input type="hidden" name="add_on"><?php echo $deposit;?></td>
        <?php 
        if(isset($add_on)&&($add_on!=='Driver'))
        {
        ?>
            <td><input type="hidden" name="add_on"><?php echo $ppd;?></td>
            <td><input type="hidden" name="add_on"><?php echo $pp8;?></td>
            <td><input type="hidden" name="add_on"><?php echo $pp16;?></td>

        <?php
        }
        else
        {
        ?>
            <td><input type="hidden" name="add_on"><?php echo $ppd;?></td>
            <td><input type="radio" name="add_on"><?php echo $pp8;?></td>
            <td><input type="radio" name="add_on"><?php echo $pp16;?></td>
        <?php
        }
        ?>
        <td><input type="checkbox" name="add_item[]" value="<?php echo $add_on_id;?>"/></td>
    </tr>
    <?php
    }
    ?>

    <input type="hidden" name="submit_add">
    <tr><td colspan="6"></td></tr>
</table>

我正在记录这样的值:

if(isset($_POST['submit_add']))
{
    $add_item=$_POST['add_item'];
    echo $add_item_1=implode(',',$add_item);
}

如何才能捕获用户为项目驱动程序选择的值。

同时将它们全部归入一个名为addon的名称,这样我以后可以将它们作为一个组存储在会话中?

完整表格:

 <form action="" method="POST">
                   <?php
                   //display pickup location
                   mysql_select_db($database_bumi_conn, $bumi_conn);

                   $q="SELECT * FROM tbl_pickup_location WHERE pickup_id='$location'";

                   $r=mysql_query($q);
                   $row_show=  mysql_fetch_array($r);

                   ?>
                      <input type="hidden" name="lo" value="<?php echo $location_name=$row_show['pickup_location'];?>">
                   <?php
                   echo 'Pickup Location :'.$location_name=$row_show['pickup_location'].'<br/>';

                   //display dropoff location
                   mysql_select_db($database_bumi_conn, $bumi_conn);

                   $q_1="SELECT * FROM tbl_dropoff WHERE dropoff_id='$d_location'";

                   $r_1=mysql_query($q_1);
                   $row_show_1=  mysql_fetch_array($r_1);

                  ?>
                  <input type="hidden" name="d_lo" value="<?php echo $location_name_1=$row_show_1['dropoff_location'];?>">
                  <?php
                   echo 'Return Location : '.$location_name_1=$row_show_1['dropoff_location'].'<br/>';
                   ?>
                      <input type="hidden" name="val_1" value="<?php echo $date_value; ?>"/>
                   <?php
                   echo 'Pickup date : '.$date_value.'<br/>';
                   ?>
                       <input type="hidden" name="val_2" value="<?php echo $date_value_2; ?>"/>
                    <?php
                   echo 'Return date : '.$date_value_2.'<br/>';
                   //$days=0;

                   $days=$diff->format("%a Days");
                   echo 'Total Rental for : '.$days.'<br/>';

                   //echo"hdssssssssssssfviodrhfvuhgudfhghdfhijswdjiahsdhsndjfhzsnhio";
                   $total_days=(int)$days;

                   ?>
                       <input type="hidden" name="t_days" value="<?php echo $total_days; ?>"/>
                   <?php


                   include'calculation.php';
                   ?>
                       <input type="hidden" name="sum" value="<?php echo $sum;?>">
                       <?php


                   mysql_select_db($database_bumi_conn, $bumi_conn);
                   $q_addon="SELECT * FROM tbl_addons";
                   $result_addon=  mysql_query($q_addon)or die(mysql_error());


                       echo "<hr width=540>";
                   ?>
                   <table border="1" style="border-collapse: collapse;margin-top: 20px;">
                      <tr><th>AddOns</th><th>Deposit</th><th>PricePerDay</th><th>Price per 8th Hour</th><th>Price per 16th Hour</th><th></th></tr>

                  <?php
                   while($row_addon=mysql_fetch_array($result_addon))
                   {
                       $add_on_id=$row_addon['addOns_id'];
                       $add_on=$row_addon['addOns'];
                       $deposit=$row_addon['Deposit'];
                       $ppd=$row_addon['PricePerDay'];
                       $pp8=$row_addon['PricePer8thHour'];
                        $pp16=$row_addon['PricePer16thHour'];
                       $status=$row_addon['status'];

                   ?>

                       <tr>
                           <td><input type="hidden" name="add_name" value=""><?php echo $add_on;?></td>
                           <td><input type="hidden" name="add_item[]"><?php echo $deposit;?></td>


                           <td><input type="hidden" name="add_item[]"><?php echo $ppd;?></td>

                           <td><input type="radio" name="add_item[]" value="eight"><?php echo $pp8;?></td>
                           <td><input type="radio" name="add_item[]" value="six"><?php echo $pp16;?></td>

                           <td><input type="checkbox" name="add_item[]" value="<?php echo $add_on_id;?>"/></td>

                       </tr>
                     <?php
                   }
                   ?>
                          <input type="hidden" name="submit_add">
                      <tr><td colspan="6"></td></tr>

                  </table>
                   <input type="image" src="submit.png" name="submit" value="submit"  onclick="return confirm('Do you really want to proceed to checkout?');"href="checkout.php" style="padding-left:20px;" title="Add to cart"/>




                     </form>   

1 个答案:

答案 0 :(得分:0)

要一次选择一个radio按钮,您必须同时提供所有radio按钮的名称。 否则,当选择一个时,您必须使用javascript/jquery取消选择其他人。

如果您给所有单选按钮名称相同,那么当您发布它时,只会发布所选的无线电的值。你可以通过$_POST['radio_name']获得它。

这是$_POST['add_item']

如果您有兴趣使用jquery,可以这样做

<script>
 $(document).ready(function() { 
    $('input:radio').click(function(event) { 
        $('input:radio').not(this).attr('checked', false);
        $(this).attr('checked', true);
    });
}); 
</script>