Передать значение выбранного радио на следующую страницу - PullRequest
1 голос
/ 24 октября 2011

У меня есть страница PHP, которая отображает результат запроса MySQL с переключателями.Это внутри формы.Я хочу передать значение выбранного переключателя на следующую страницу.

Я знаю, что это легко, но я не могу прийти к правильному решению.

Мой код для страницы PHPвыглядит следующим образом:

    <html>
    <head>
    </head>
    <body>
    <?PHP

$tenders="SELECT deliverydetails.deliveryid AS `deliveryid` , deliverydetails.collectionarea1 AS `dispatch` , deliverydetails.trailertype AS `trailer` , deliverydetails.collectiondate AS `collectiondate` , deliverydetails.collectiontime AS `collectiontime` , deliverydetails.destination1 AS `destination` , deliverydetails.arrivaldate AS `arrivaldate` , deliverydetails.arrivaltime AS `arrivaltime` , deliverydetails.route AS `route` , deliverydetails.deliverystatus AS `status` , deliverydetails.comments AS `comments` , deliverydetails.loadid1 AS `load` , loadsummaryview.`order number`AS `load1` , loadsummaryview.`number of cases` AS `cases` , loadsummaryview.`total weight`AS `weight` , loadsummaryview.`transport type`AS `transporttype` , deliverydetails.backhaul AS `backhaul` , deliveryhaulier.haulier AS `haulier`, costbyroute.cost as `cost` FROM deliverydetails, deliveryhaulier, loadsummaryview,costbyroute WHERE deliverydetails.loadid1 = loadsummaryview.`order number` AND deliveryhaulier.deliveryid = deliverydetails.deliveryid AND deliverydetails.deliverystatus ='tenderoffered' and costbyroute.id=deliverydetails.hauliercostbyrouteid and deliveryhaulier.haulier='$haulier' order by deliverydetails.deliveryid";
    $tenderresult=mysql_query($tenders);
    $count=mysql_num_rows($tenderresult);


    ?>

                <form name="form1" method="post" action="viewtenderdetails.php">
                    <table border=1>
                        <tr>

                    <th>&nbsp;</th>
                    <th>Delivery Number</th>    
                    <th>Route</th>          
                    <th>Required Trailer</th>
                    <th>Number of Cases</th>                                      <th>Weight of Load</th>
            <th>Rate</th>                       
            <th>Collection Point</th>
            <th>Destination</th> 
            <th>Colleciton Date</th> 
            <th>CollectionTime</th> 
            <th>DeliveryDate</th> 
            <th>DeliveryTime</th>                       
            <th>Backhaul</th>
            <th>status</th>
            <th>comments</th>
            </tr>

    <?php
        while($rows=mysql_fetch_array($tenderresult)){
    ?>
                    <tr>
                    <td>
    <input type="radio" name=check id=check value="<?php echo $rows['deliveryid']; ?>"></td>


        <td><?php echo $rows['deliveryid']; ?></td>
                    <td><?php echo $rows['route']; ?></td>
                    <td><?php echo $rows['trailer']; ?></td>
            <td><?php echo $rows['cases']; ?></td>
                    <td><?php echo $rows['weight']; ?></td>
            <td><?php echo $rows['cost']; ?></td>
            <td><?php echo $rows['dispatch']; ?></td>
            <td><?php echo $rows['destination']; ?></td>
            <td><?php echo $rows['collectiondate']; ?></td>
            <td><?php echo $rows['collectiontime']; ?></td>
            <td><?php echo $rows['arrivaldate']; ?></td>
            <td><?php echo $rows['arrivaltime']; ?></td>
            <td><?php echo $rows['backhaul']; ?></td>   
            <td><?php echo $rows['status']; ?></td> 
            <td><?php echo $rows['comments']; ?></td>                       </tr>  

    <?php
      }
    ?>
            <tr>
                    <td colspan=3>
    <input name="ViewDetails" type="submit" id="ViewDetails" value="ViewDetails"></td>
                    </tr> 
    </table>

    </form>
    </body>
    </html>

Моя следующая страница (viewtenderdetails.php) затем пытается повторить выбранный deliveryid, но не работает правильно.код:

<html><head><title>Hulamin LOC
</title>
</head>
<body>

          <?PHP
                echo $_POST[check];
    ?>
</body>
</html>

Как я могу получить выбранный вариант радио с первой страницы на вторую страницу?Большое спасибо, Райан

Ответы [ 3 ]

2 голосов
/ 24 октября 2011

Попробуйте поставить кавычки вокруг объявлений имен переменных в HTML и PHP:

HTML:

<input type="radio" name="check" id="check" value="whatever" />

PHP:

echo $_POST["check"];
1 голос
/ 24 октября 2011

если в форме есть несколько переключателей, которые вы можете использовать:

<input type="radio" name="check[]" value="<?php echo $rows['deliveryid']; ?>"></td>

А затем на странице результатов:

echo implode(", ", $_POST['check']); //To see the list of checks selected
1 голос
/ 24 октября 2011

Код выглядит хорошо.См. Ниже код для ссылки.попробуйте в одном test.php

<?php
    if($_POST)
        echo $_POST['check'];

?>
<form name="frm" method="post">
<input type="radio" name="check" id="check" value="1"> 1 
<input type="radio" name="check" id="check" value="2"> 2
<input type="radio" name="check" id="check" value="3"> 3
<input type="submit" name="Submit" />
</form>

Замените $ _POST [check] на $ _POST ['check']

Спасибо.

...