簡體   English   中英

在 PHP 中循環處理單選按鈕

[英]Processing radio buttons in loop in PHP

我有一個迭代 3 次的循環。 在循環內部,我有一個帶有單選按鈕的 HTML 表單。 我正在使用 PHP 處理輸入。 當我回顯表單數據時,它沒有顯示正確的值。 這是處理數據的錯誤方式嗎? 任何幫助表示贊賞。

測試.php

<?php
for ($i = 1; $i <= 3; $i++) {
    ?>

    <form action = 'test.php' method = 'post'>
        <input type="radio" name="num<?php echo $i; ?>" value="one">One<br>
        <input type="radio" name="num<?php echo $i; ?>" value="two">Two
    </form>

    <?php
}
?>

<input type = 'submit' value = 'Go'>

<?php
for ($i = 1; $i <= 3; $i++) {
    echo $_POST['num' . $i];
}
?>

將表單移到 for 循環之外。 您當前正在創建三個 forms 和一個提交按鈕(未附加到任何一個)。

試試這個方法

<form action = 'test.php' method = 'post'>
<?php
for ($i = 1; $i <= 3; $i++) {
?>
    <input type="radio" name="num<?php echo $i; ?>" value="one">One<br>
    <input type="radio" name="num<?php echo $i; ?>" value="two">Two
<?php
}
?>

<input type = 'submit' value = 'Go'>
</form>

<?php
for ($i = 1; $i <= 3; $i++) {
    echo $_POST['num' . $i];
}
?>

使用以下代碼:或者您可以使用 radiogroup 數組,它比這更容易。

<form action = 'test.php' method = 'post'>
<?php
for ($i = 1; $i <= 3; $i++) {
?>
<input type="radio" name="num<?php echo $i; ?>" value="one">One<br>
    <input type="radio" name="num<?php echo $i; ?>" value="two">Two
<?php
}
?>
<input type = 'submit' value = 'Go'>
</form>


<?php
for ($i = 1; $i <= 3; $i++) {
echo $_POST['num' . $i];
}
?>

@Cagy79 添加了額外的提交按鈕。我已經修改了代碼,

<form action ="" method='post'>
<?php
for ($i = 1; $i <= 3; $i++) {
    ?>
        <input type="radio" name="num<?php echo $i; ?>" value="one">One<br>
        <input type="radio" name="num<?php echo $i; ?>" value="two">Two    

    <?php
}
?>
<input type = 'submit' value = 'Go'>
</form>


<?php
for ($i = 1; $i <= 3; $i++) {
    echo $_POST['num' . $i];
}
?>

這有效。:)

您有 3 個 forms 沒有提交按鈕(它需要在標簽之間)。 您需要使用這樣的一個提交按鈕創建一個表單,以便將所有數據發布到 $_POST。

<form method='post'>
<?php
for ($i = 1; $i <= 3; $i++) {
    ?>
        <input type="radio" name="num<?php echo $i; ?>" value="one">One<br>
        <input type="radio" name="num<?php echo $i; ?>" value="two">Two
    <?php
}
?>
<input type = 'submit' value = 'Go'>
</form>

<?php
for ($i = 1; $i <= 3; $i++) {
    echo $_POST['num' . $i];
}
?>

暫無
暫無

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

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