【问题标题】:PHP - fetching and inserting inside the loopPHP - 在循环中获取和插入
【发布时间】:2013-04-30 06:29:26
【问题描述】:

我有问题。我正在使用一个while循环。我在查询 $rows['price'] 中放置了一个。如何将循环内的整个插入值提交到表中?它有 5 个结果。

page1.php

        <?php

    $sql = mysql_query("SELECT id FROM table where id = '$ID'");

        while($row = mysql_fetch_assoc($sql)){

        echo '<form action = "page2.php" name = "add" method = "post">';
        echo "<b>Price:</b> ";
        echo '<input size = "1" type="text" name="price" value = ""/>';
        echo "%";
        echo "<br/>";

        }

        ?>

    <input type="submit" name="price" value="SUBMIT"/>
    </form>

输出应该是这样的。

价格:__ % 价格: __ % 价格: __ % 价格: __ % 价格: __ % |提交|

page2.php

             <?php


    if(isset($_POST['submit'])){
        $price = $_POST['price'];

        mysql_query("INSERT INTO items_tbl(price) VALUES('$price');


         ?>

不知何故,它工作了一点。我以 90,80,70,60,50 的形式输入值。但唯一插入表中的是最后一个,位于底部 (50)。其余的不要。

【问题讨论】:

  • MySQLmysql_函数)扩展名是*deprecated。我建议改用MySQLimysqli*_ 函数)或PDO
  • 我知道,我还在学习 php 的基本知识。在我学会了 mysqli 之后,我还是打算使用 mysqli

标签: php loops while-loop


【解决方案1】:

像这样使用它,&lt;form&gt; 标签应该在while 循环之外,你必须把$row['price'] 放在value 里面

$sql = mysql_query("SELECT price FROM table where id = '$ID'");

echo '<form action = "page2.php" name = "add" method = "post">';
while($row = mysql_fetch_assoc($sql)){
    echo "<b>Price:</b> ";
    echo '<input size = "1" type="text" name="weight'.$row['price'].'" value = ""/>';
    echo "%";
    echo "<br/>";

}

?>
<input type="submit" name="submit" value="SUBMIT"/>
</form>

page2.php中使用这个

$val = implode(",", $_POST);
mysql_query("INSERT INTO items_tbl(price) VALUES('$val');

注意: Please, don't use mysql_* functions in new code。它们不再维护and are officially deprecated。看到red box?改为了解 prepared statements,并使用 PDOMySQLi - this article 将帮助您决定哪个。如果你选择 PDO,here is a good tutorial

【讨论】:

  • 你必须输入不是来自while循环查询的值-_-
  • 可以说,我在表格中输入了值 90,80,70,60,50 然后所有这些都将被插入到表格中
  • 抱歉没有说明足够多-_- page1.php 调用 ID 以便我可以在 page2.php 的单独表格中插入价格
猜你喜欢
  • 1970-01-01
  • 2015-08-28
  • 1970-01-01
  • 1970-01-01
  • 2012-12-20
  • 2012-04-30
  • 1970-01-01
  • 2020-05-17
  • 1970-01-01
相关资源
最近更新 更多