douxiluan6555
2016-05-30 08:52
浏览 44
已采纳

PHP - 如何使用POST将单选按钮选择传递到另一个页面? [重复]

This is my form in page 1, the radio buttons are generated using php it is a list of 5 names of the tables in the database:

<form action="showtable.php" method="post">
    <table>
        while ($fieldInfo = mysqli_fetch_field($results)) { 
            <input type="radio" name="tableNames" value="<?php echo $tempName; ?>" > <?php echo $tempName ?> <br/>
        <?php } ?>
        <tr> 
            <td><input type="submit" value="submit"></td>
        </tr>
    </table>
</form>

this is my action page in page 2, it needs to receive the table name selection and create a query, it does not:

<?php
$tName = $_POST["tableNames"];

require_once("conn.php");

$sql = "SELECT * FROM $tName";

$results = mysqli_query($conn, $sql)
or die ('Problem with query' . mysqli_error($conn));

if (mysqli_num_rows($results) >= 1) {
    echo "query success";
} else {
    echo "query fail";
}
?>

I get an error that states:

Undefined index: tableNames

in the second page

</div>
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongqun5769 2016-05-30 09:01
    已采纳

    Write your code as

    <?php
         if(isset($_POST["tableNames"])){
             $tName = $_POST["tableNames"];
             require_once("conn.php");
             $sql = "SELECT * FROM $tName";
             $results = mysqli_query($conn, $sql) or die ('Problem with query' . mysqli_error($conn));
    
             if (mysqli_num_rows($results) >= 1) {
                 echo "query success";
             } else {
                 echo "query fail";
             }
         }
    

    ?>

    已采纳该答案
    打赏 评论

相关推荐 更多相似问题