php - 尝试使用动态创建的表单更新数据库中的日期

标签 php mysql

因此,我创建了一个管理页面,该页面根据我们数据库中的用户数量创建 X 个表单,每个表单旁边都有一个提交按钮,用于提交对数据库中日期的更改。我的问题是,当我想获取发布内容的值(value)时,我无法从发布内容中准确提取我需要的内容。它被保存到一个名为的数组中,当我 print_r 该数组时,我得到了我想要的,即:

  [1] => "whatever date they typed in" 
  (obviously the 1 changes depending on which item they changed the date of)

我需要能够通过以下方式查询我的数据库:

  UPDATE users SET subdate="whatever they typed in" WHERE id="the array reference number"

我确切地知道我需要做什么,只是我对 SQL 不太熟悉,所以任何帮助将不胜感激。提前致谢。

引用代码:

<div class="form-section grid12" id="changedates">
<h1>Change Dates</h1>
    <?php
          $query = mysql_query("SELECT * FROM users WHERE admin='y'");
    ?>
    <table>
    <?php
      while($row = mysql_fetch_assoc($query)) {
    ?>
    <tr>
      <td>
        <h5><?php echo $row['displayname'];?></h5>
      </td>

      <td>
        <form action="" method="POST">
          <input type="text" name="subdate[<? echo $row['id'] ?>]" value="<?php echo $row['submissiondate'];?>">
          <input type="text" name="nextupdate[<? echo $row['id'] ?>]" value="<?php echo $row['nextupdate'];?>">
      </td>

      <td>
          <input type="submit" value="Set Date" name="setdate">
        </form>
      </td>
  <?php
    }
  ?>
    </table>

</div>

最佳答案

你可以使用foreach...

foreach ($_POST[nextupdate] as $rowId => $time)
    {
    // do db update
    }

编辑:刚刚意识到每个表单有多个输入。

为什么不使用数组名称来命名每个输入:

<input type="text" name="form_data[<?= $row_id ?>][subdate]">
<input type="text" name="form_data[<?= $row_id ?>][nextupdate]">

在 PHP 中:

foreach ($_POST[form_data] as $rowId => $values)
    {
    $subdate = $values[subdate];
    $nextupdate = $values[nextupdate];

    // do SQL stuff
    }

关于php - 尝试使用动态创建的表单更新数据库中的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19369267/

相关文章:

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

mysql - 将相同的值分配给不同的行特定次数(Mysql)

python - 使用 django F() 对象更新多列

PHP - 包含 unicode 的 SQL 查询由于某种原因返回 NULL

mysql - 如何更改表并将 int 类型默认 null 与某些 null 条目修改为 int 类型非 null?

php - 使用 1 个表单插入多个订单

c# - ASP.Net (C#) & SQL Server - 或 - PHP & MySQL 的性能?

php imap - 获取正文并制作纯文本

php - Laravel 无法在匿名函数内使用 $this

php - 我怎样才能去掉http https和www。来自 mysql 数据库中的 url