douyeyan0650 2016-05-24 05:30
浏览 61

多行批量输入

Code : I have 3 multiline textbox, each of its contain some data, which will be used further to generate INSERT QUERY, DB contains 3 columns.

So these will be used for bulk entries

<form method="post">    
<textarea name="code" id="code" rows="20" cols="20" placeholder="code"></textarea>
<textarea name="name" id="name" rows="20" cols="20" placeholder="name"></textarea>
<textarea name="pack" id="pack" rows="20" cols="20" placeholder="package"></textarea><Br>
<input type="submit" name="submit">
</form>

<?php
if (isset($_POST['submit'])){
    $code = explode("
", $_REQUEST['code']);
    $name = explode("
", $_REQUEST['name']);
    $pack = explode("
", $_REQUEST['pack']);
    /*foreach (array_combine($code, $name) as $mid => $mid1){
        echo "<br>";
        echo $mid;
        echo $mid1;
    }*/

    foreach ($code as $mid){
        foreach ($name as $mid1){
            foreach ($pack as $mid2){
            echo "INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('".$mid."','".$mid1."','".$mid2."')";
            echo "<br>";
            }
        }
    }
}
?>

Input ::

Input image, here

Output ::

INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo ','1 ','a ')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo ','1 ','b')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo ','2','a ')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo ','2','b')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo1','1 ','a ')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo1','1 ','b')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo1','2','a ')
INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo1','2','b')

Expecting :

    INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo ','1 ','a ')
    INSERT INTO medi_medicines (`cc1`,`nn1`,`pp1`) VALUES('demo1 ','2 ','b ')
  • 写回答

1条回答 默认 最新

  • doubei2340 2016-05-24 05:48
    关注

    Yes because you nested loop 3 times. That's like 2x2x2.

    You should do something like:

    $queries = count($code); //This should be = 2
    for($i=0;$i<$queries;$i++) {
        echo "...VALUES('".$code[$i]."','".$name[$i]."','".$pack[$i]."')";
    }
    

    //i have not tested this code //sorry bad english

    评论

报告相同问题?

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?