【问题标题】:While loop $_post from form从表单循环 $_post
【发布时间】:2016-01-03 02:10:34
【问题描述】:
<?php
include("dbFunctions.php");
$query ="SELECT * FROM `physical_examination` WHERE `PE_Opt_ans`= 0";//select form options name
$result = mysqli_query($link,$query);

?>

<div id="tabs-3">       
  <table>     
 <form action="<?php echo $_SERVER['PHP_SELF']?>" method="post" name="tab0">                                                              
  <?php while ($arrayResult = mysqli_fetch_array($result)){ ?>
        <tr>
            <td><label for="input"><b><?php echo      $arrayResult['PE_Opt_name']?></label></td>
         <?php  if ($arrayResult['PE_Opt_type'] == "textarea") { ?>        
            <td><textarea rows="8" cols="45"name = "other1"></textarea></td>

         <?php  } else { ?>

        <td><input type="<?php echo $arrayResult['PE_Opt_type']?>"   name="input<?php echo $arrayResult['id']?>  " ></td>
        </tr>   

      <?php  } ?>


    <?php } ?>


       <br> <input value="Submit" type="submit" name="submit1"> 

                             </form>

    </table>             

    <?php
    include "dbFunctions.php";
    if(isset($_POST['submit1'])) { 
          $number = $_POST['other1'];

我被困在这里了。

点击提交按钮后,我如何$_POST 基于while循环的表单?输入&lt;?php echo $arrayResult['id']?&gt;的名称值是否需要另一个while循环?

【问题讨论】:

  • HTML 中不能有&lt;table&gt;&lt;form&gt;,应该是&lt;form&gt;&lt;table&gt;

标签: php mysql


【解决方案1】:

我没有安静地得到你想要的,但我假设你想要 while 循环生成的 textarea 的内容。

在循环中将名称从 input 更改为 input[]other1 更改为 other1[]

如果你之后var_dump($_POST),你应该会看到它们现在是一个数组,你可以用foreach循环遍历它

PS:你永远不应该吃原始的 $_POST/$_GET 输入,PHP_SELF 是另一个安全漏洞。但这只是我的两分钱

【讨论】:

    猜你喜欢
    • 2012-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-01
    相关资源
    最近更新 更多