0

所以这应该是我对整个项目的最后一个问题。我已经制作了员工考勤卡页面。效果很好。我正在尝试使它们成为每个考勤卡的审核/更改页面。基本上,最初的评论页面会调出他们提交的考勤卡。他们选择审查。它将 ID 号带到评论页面,我调用 ID 号将来自该时间卡的所有信息显示到新的时间卡 html/php 表单中。(基本上它与他们用来提交的表单完全相同,但是我已经将这些值作为选项回显)

当我进行更新时,它不仅会继承回显值。它只是更新他们所做的任何更改,实际上删除了其他所有内容。下面是一个下拉列表的片段(所有非下拉列表的更新都很好。这仅适用于数据包含在数据库中的下拉列表。

 <select name="starttime" id="input_6" style="width:150px">
            <option value="" selected><?php echo $stime ?></option>
          <?php

                $result = mysql_query("SELECT time FROM selTime ORDER BY id");

                 while($row = mysql_fetch_array($result)) {

                 echo "<option value=\"" . $row['time'] . "\">" . $row['time'] . "                                              </option>";

                }

             ?>
      </select>

那么这段代码会发生什么。当他们打开评论页面时,他们会在提交时看到他们的开始时间。如果他们不理会它,并且不更改任何内容并在更改其他内容后推送提交。开始时间实际上更新为空白。如果他们将开始时间更改为一个值,它确实会提交更改。这段代码中是否有我可以更改的内容来提交 echo'd 值,而不仅仅是显示它?

4

2 回答 2

2

我相信问题出在这行代码上:

<option value="" selected><?php echo $stime ?></option>

尽管您将其设置为“选定”,但选定元素的值为“”(空)。尝试将其更改为:

<option value="<?php echo $stime; ?>" selected="selected"><?php echo $stime; ?></option>
于 2012-09-07T14:04:47.620 回答
0

如果他们不更改此选择列表项,并直接提交页面,则所选项目是第一个具有 value="" 的项目,因此这将在数据库中更新为空白(null)。

你现在需要给你的第一个项目一个日期时间的值。这段代码在这里:

 <option value="DATETINMENOW" selected><?php echo $stime ?></option>
于 2012-09-07T14:02:53.760 回答