首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将PHP中复选框的多个数组值传递给另一个页面?

如何将PHP中复选框的多个数组值传递给另一个页面?
EN

Stack Overflow用户
提问于 2021-12-16 14:54:45
回答 2查看 68关注 0票数 0

我想要创建一个选择页面(通过使用复选框),最后它将显示所有复选框的选择结果。在我的第一页中大约有5种不同类型的复选框(仅包含HTML),用于情感、时间、动作、工具和个性化。

首页: index.php

代码语言:javascript
复制
    <div>
    <form action="process.php" method="post">
    <label>Select your emotions :</label>
    <input type="checkbox" name="emotions[]" value="Sadness"> Sadness
    <input type="checkbox" name="emotions[]" value="Anxiety"> Anxiety
    <input type="checkbox" name="emotions[]" value="Anger"> Anger
    <input type="checkbox" name="emotions[]" value="Disgust"> Disgust
    <input type="checkbox" name="emotions[]" value="Fear"> Fear
    <input type="checkbox" name="emotions[]" value="Surprised"> Surprised
    <br>
    <label>Select your time to commit :</label>
    <input type="checkbox" name="time[]" value="1"> Less than 1 minute
    <input type="checkbox" name="time[]" value="1-3"> 1-3 minutes
    <input type="checkbox" name="time[]" value="3-5"> 3-5 minutes
    <input type="checkbox" name="time[]" value="5-10"> 5-10 minutes
    <input type="checkbox" name="time[]" value="10-15"> 10-15 minutes
    <input type="checkbox" name="time[]" value="15-30"> 15-30 minutes
    <br>
    <label>Select how you want to move :</label>
    <input type="checkbox" name="movement[]" value="Lying Down"> Lying Down
    <input type="checkbox" name="movement[]" value="Sitting"> Sitting
    <input type="checkbox" name="movement[]" value="Standing"> Standing
    <input type="checkbox" name="movement[]" value="Stretching"> Stretching
    <input type="checkbox" name="movement[]" value="Walking"> Walking
    <input type="checkbox" name="movement[]" value="Work-out"> Work-out
    <br>
    <label>Tools around me :</label>
    <input type="checkbox" name="tools[]" value="Me"> Me
    <input type="checkbox" name="tools[]" value="Pen & Paper"> Pen & Paper
    <input type="checkbox" name="tools[]" value="Bottle"> Bottle
    <input type="checkbox" name="tools[]" value="Color Pencils"> Color Pencils
    <input type="checkbox" name="tools[]" value="Drinks"> Drinks
    <input type="checkbox" name="tools[]" value="Snacks"> Snacks
    <label>Personalization :</label>
    <input type="checkbox" name="personalization[]" value="Favorites"> Favorites
    <input type="checkbox" name="personalization[]" value="New"> New
    <input type="checkbox" name="personalization[]" value="Completed"> Completed
    <input type="checkbox" name="personalization[]" value="Islamic"> Islamic
</div>
<div>
    <button type="submit">Submit</button>
</div>

第二页: process.php

代码语言:javascript
复制
<?php
$emotions = (isset($_POST['emotions'])) ? $_POST['emotions'] : array(); ?>
<p><strong>Emotions :</strong>
    <?php
    if (count($emotions) > 0) {
        foreach ($emotions as $emotions) {
            echo $emotions . ' ';
        }
    } else {
        echo "No emotions has been selected";
    }
    ?>
</p> 

<?
$time = (isset($_POST['time'])) ? $_POST['time'] : array(); ?>
<p><strong>Time :</strong>
    <?php
    if (count($time) > 0) {
        foreach ($time as $time) {
            echo $time . ' ';
        }
    } else {
        echo "No time has been selected";
    }
    ?>
</p> 
<?
$movement = (isset($_POST['movement'])) ? $_POST['movement'] : array(); ?>
<p><strong>Movement :</strong>
    <?php
    if (count($movement) > 0) {
        foreach ($movement as $movement) {
            echo $movement . ' ';
        }
    } else {
        echo "No movements has been selected";
    }
    ?>
</p> 

<?
$tools = (isset($_POST['tools'])) ? $_POST['tools'] : array(); ?>
<p><strong>Tools :</strong>
    <?php
    if (count($tools) > 0) {
        foreach ($tools as $tools) {
            echo $tools . ' ';
        }
    } else {
        echo "No tools has been selected";
    }
    ?>
</p> 

<?
$personalization = (isset($_POST['personalization'])) ? $_POST['personalization'] : array(); ?>
<p><strong>Personalization :</strong>
    <?php
    if (count($personalization) > 0) {
        foreach ($personalization as $personalization) {
            echo $personalization . ' ';
        }
    } else {
        echo "No personalization has been selected";
    }
    ?>
</p> 
EN

回答 2

Stack Overflow用户

发布于 2022-02-09 07:13:33

检查是否在form标记的action属性中输入了正确的路径以到达"process.php“文件

票数 0
EN

Stack Overflow用户

发布于 2022-02-09 07:30:45

回顾你的前瞻。你所做的是:

代码语言:javascript
复制
$array = [1, 2, 3];
foreach($array as $array){
  // $array is no more an array, but have the first value of the init array : 1
}

就像这样:$array = $array

你必须这样做:

代码语言:javascript
复制
$array = [1, 2, 3];
foreach($array as $ar){
  ...
  // code for $ar
  ...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70381108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档