为了账号安全,请及时绑定邮箱和手机立即绑定

如何在php中提交时获取包含多个选项的行的值?

如何在php中提交时获取包含多个选项的行的值?

PHP
绝地无双 2021-11-05 14:54:54
我必须准备一个包含多行产品的购物车,每一行都应该有诸如“产品品牌”“产品重量”之类的选项按钮……用户应该通过单击其复选框来选择产品。表格下方只有一个按钮(添加到购物车)用户应通过选中其复选框来选择产品,并在选择许多产品后,通过单击添加到购物车按钮将它们添加到购物车。我尝试过的:我用选项创建了行,并在同一行中给了每个元素,一个数组作为“名称”,但没有解决。请参阅以下示例代码以了解我的工作。<form method="post">  <table>    <tr>      <td>        <input type="checkbox" name="">      </td>      <td>        <select>          <option value="car">car</option>          <option value="bike">bike</option>        </select>      </td>      <td>        <select>          <option>            <option value="blue">blue</option>            <option value="red">red</option>          </option>        </select>      </td>    </tr>    <tr>      <td>        <input type="checkbox" name="">      </td>      <td>        <select>          <option value="cycle">cycle</option>          <option value="skate">skate</option>        </select>      </td>      <td>        <select>          <option>            <option value="male">male</option>            <option value="female">female</option>          </option>        </select>      </td>    </tr>    <tr>      <td>        <input type="checkbox" name="">      </td>      <td>        <select>          <option value="dog">dog</option>          <option value="cat">cat</option>        </select>      </td>      <td>        <select>          <option>            <option value="bat">bat</option>            <option value="ball">ball</option>          </option>        </select>      </td>    </tr>  </table>  <input type="submit" name="submit"></form>
查看完整描述

2 回答

?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

首先,您需要action在表单元素上设置一个,包含表单数据应该被发布到的位置。请参阅https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form

其次,您需要向name表单元素添加属性,以便稍后由后端脚本获取它们。请参阅https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select

最后,在您的后端(大概是 PHP)中,您可以使用这些值$_POST(或为您提供的任何抽象,例如https://symfony.com/doc/current/components/http_foundation.html#accessing-request-data

最后一点,请确保您验证进入后端的所有数据!


查看完整回答
反对 回复 2021-11-05
?
拉丁的传说

TA贡献1789条经验 获得超8个赞

将所需字段的名称 attr 添加为数组。


形式会像。


<form method="post">


<table>

<tr>

    <td>

        <input type="checkbox" name="attribute[1]['checked']">

    </td>

    <td>

        <select name="attribute[1]['product']">

            <option value="car">car</option>

            <option value="bike">bike</option>

        </select>

    </td>

    <td>

        <select name="attribute[1]['product_prop']">

            <option>

                <option value="blue">blue</option>

                <option value="red">red</option>

            </option>

        </select>

    </td>

</tr>

<tr>

    <td>

        <input type="checkbox" name="attribute[2]['checked']">

    </td>

    <td>

         <select name="attribute[2]['product']">

            <option value="cycle">cycle</option>

            <option value="skate">skate</option>

        </select>

    </td>

    <td>

         <select name="attribute[2]['product_prop']">

            <option>

                <option value="male">male</option>

                <option value="female">female</option>

            </option>

        </select>

    </td>

</tr>

<tr>

    <td>

        <input type="checkbox" name="attribute[3]['checked']">

    </td>

    <td>

       <select name="attribute[3]['product']">

            <option value="dog">dog</option>

            <option value="cat">cat</option>

        </select>

    </td>

    <td>

        <select name="attribute[3]['product_prop']">

            <option>

                <option value="bat">bat</option>

                <option value="ball">ball</option>

            </option>

        </select>

    </td>

</tr>

</table>

<input type="submit" name="submit" value="submit">

</form>

提交表单后,您将在数组中获得选中的行值。使用循环获取值。


喜欢。


<?php


if(isset($_POST['submit'])){

    $attr = $_POST['attribute'];


    /*echo "<pre>";

    print_r($attr);*/


    foreach($attr as $key=>$value){


        //get the value of checked row - product, product_prop etc

        if(isset($value["'checked'"]) && $value["'checked'"] != ''){

            echo $product = $value["'product'"];

            echo $product_prop = $value["'product_prop'"];


            //Add your code here

        }

    }

}


?>


查看完整回答
反对 回复 2021-11-05
  • 2 回答
  • 0 关注
  • 157 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信