簡體   English   中英

如何創建一個php函數或任何腳本/ jquery Javascript,它允許我獲取與復選框關聯的值並添加它們?

[英]How do I create a php function or any script/jquery Javascript that will allow me to take the values associated with a checkbox and add them?

//用戶只能在選擇econ,goodseat或firstclass之前選擇座位號復選框,如果用戶點擊其中一個goodseat / econ / firstclass復選框而未選擇座位號復選框,則應顯示messagepopup或驗證表明座位必須先選擇數字復選框。

價格值也取決於檢查的座位數。 例如,假設票價是120美元,他選擇座位號2的復選框和座位號的復選框,那么總票價應為240美元,依此類推。 goodseat,econ和firstclass復選框不會增加價格。 他們只是為了安排座位。 為了讓用戶單擊add_submit按鈕,必須選中至少一個復選框。 我該如何創建呢? 有人請幫幫我。 我必須在會話腳本中輸入什么內容,以便一旦完成選擇並單擊add_submit按鈕,下一頁將記住總計和旅行詳細信息。 在此輸入圖像描述

Here is my php page

<!DOCTYPE html>
<head>
<style>

td{

    padding-top: 10px; 
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
}
p{
font-size: 16px;

}
</style>
<body>
<?php
// Start the session
session_start();
?>

<?php

       $str = $_GET['Confirm'];
       $array = (explode(",",$str)); 
      ?>


<h1>Booking Details</h1>

travel Details:
<table>
    <tr>
        <td> key id
        </td>
        <td><?php echo $array[0] ?>
        </td>
    </tr>
    <tr>
        <td>
        destination</td>
        <td> <?php echo $array[1] ?>
        </td>
    </tr>
    <tr>
        <td>
        arrival</td>
        <td> <?php echo $array[2] ?>
        </td>
    </tr>
    <tr>
        <td>
        Price</td>
        <td> $<?php echo $array[3] ?>
        </td>
    </tr>

</table>

<?php
// Set session variables
$_SESSION["key_id"] = $array[0];
$_SESSION["destination"] = $array[1];
$_SESSION["arrival"] = $array[2];
$_SESSION["price"] = $array[3];
echo "Session variables for this booking have been set.";
?>
<form action="Yourbookings.php" method="get">
<table>
<tr>
    <td>Seat #</td>
    <td>econ </td>
    <td>firstclass</td>
    <td>goodseat</td>
</tr>
<tr>
    <td>Seat 1 <input type="checkbox" name="seat1" value="seat1"> </td>
    <td>  <input type="checkbox" name="econ" value="econ"> </td>
    <td>  <input type="checkbox" name="firstclass" value="firstclass"> </td>
    <td>  <input type="checkbox" name="goodseat" value="goodseat"> </td>
</tr>
<tr>
    <td>Seat 2 <input type="checkbox" name="seat1" value="seat1"> </td>
    <td>  <input type="checkbox" name="econ" value="econ"> </td>
    <td>  <input type="checkbox" name="firstclass" value="firstclass"> </td>
    <td>  <input type="checkbox" name="goodseat" value="goodseat"> </td>
</tr>

<tr>
    <td>Seat 3 <input type="checkbox" name="seat1" value="seat1"> </td>
    <td>  <input type="checkbox" name="econ" value="econ"> </td>
    <td>  <input type="checkbox" name="firstclass" value="firstclass"> </td>
    <td>  <input type="checkbox" name="goodseat" value="goodseat"> </td>
</tr>

<tr>
    <td>Seat 4 <input type="checkbox" name="seat1" value="seat1"> </td>
    <td>  <input type="checkbox" name="econ" value="econ"> </td>
    <td>  <input type="checkbox" name="firstclass" value="firstclass"> </td>
    <td>  <input type="checkbox" name="goodseat" value="goodseat"> </td>
</tr>

<tr>
    <td>Seat 5 <input type="checkbox" name="seat1" value="seat1"> </td>
    <td>  <input type="checkbox" name="econ" value="econ"> </td>
    <td>  <input type="checkbox" name="firstclass" value="firstclass"> </td>
    <td>  <input type="checkbox" name="goodseat" value="goodseat"> </td>
</tr>


</table>

<p>Total = $</p>
// what code do I create to so that it adds the ticket prices based on how many seats are selected.
<?php
$_SESSION["price"] = $array[3];


?>



<input type="submit" name="Add booking" value="Add_booking">
</form>



<table>
<td>
<form action="add_booking.php" method="get">

</td>
</table>
</body>
</head>
</html>

我想我理解你在說什么,我想你會想用javascript做這個,還有單選按鈕(我想) ,隱藏價格字段和readonly字段:

演示:

https://jsfiddle.net/h6aawjf0/

腳本:

$(document).ready(function(){
    $(this).on('click','.clearit',function(e) {
        e.preventDefault();
        $('input[type=radio]').attr('checked',false);
        $('input[name=total]').val('0');
    });

    $(this).on('change','input[type=radio]',function() {
        var radioBtns   =   $('input[type=radio]');
        var price       =   $('input[name=price]').val();
        var sum         =   0;

        $.each(radioBtns,function(k,v) {
            if($(v).is(":checked"))
                sum +=  1;
        });
        $('input[name=total]').val((sum*price));
    });
});
</script>

<form action="Yourbookings.php" method="get">
    <input type="hidden" name="price" value="120" />
    <table>
        <tr>
            <td>Seat #</td>
            <td>econ </td>
            <td>firstclass</td>
            <td>goodseat</td>
        </tr>
        <?php for($i=1; $i<5;$i++) { ?>
        <tr>
            <td>Seat <?php echo $i; ?>
            <td><input type="radio" name="<?php echo $i; ?>" value="econ"></td>
            <td><input type="radio" name="<?php echo $i; ?>" value="firstclass"></td>
            <td><input type="radio" name="<?php echo $i; ?>" value="goodseat"></td>
        </tr>
        <?php } ?>
    </table>
        <input type="text" name="total" readonly value="0" />
    <input type="submit" name="Add booking" value="Add_booking">
    <input type="submit" class="clearit" value="CLEAR">
</form>

選擇和提交后的輸出將類似於:

Array (
        [price] => 120
        [1] => econ
        [2] => firstclass
        [3] => firstclass
        [4] => econ
        [total] => 480
        [Add_booking] => Add_booking
    )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM