使用select

时间:2016-06-07 07:32:54

标签: php html mysql css

我有一个引导表,我使用select:

从数据库中获取值
          <table class="table table-hover table-bordered">
    <thead>
      <tr>
      <th>Studentnamn</th>
      <th>Student ID</th>
      <th>Registrerade kurser</th>
      <th>Betyg</th>
      </tr>

    </thead>
    <tbody>
      <?php include 'studentDB.php'; ?>
    </tbody>
  </table>

我想让我的表崩溃,然后显示一个输入表单,其中可以更新onclicked行上的值。我使用了以下代码:

    $sql = "SELECT student.studName, grades.studId, grades.courseId, grades.grade FROM student
        INNER JOIN grades ON student.studId=grades.studId";

try {

    foreach ($pdo->query($sql) as $row) {
        echo '<tr data-toggle="collapse" data-target="#collapseUpdate">';
        echo '<td>' . $row['studName'] . '</td>';
        echo '<td>' . $row['studId'] . '</td>';
        echo '<td>' . $row['courseId'] . '</td>';
        echo '<td>' . $row['grade'] . '</td>';
        echo '</tr>';

    echo '<tr>';
        echo '<td colspan="6" class="hiddenRow" id="collapseRow"><div class="accordian-body collapse" id="collapseUpdate">
              <div class="card card-block">
                <form class="form-horizontal" action="update.php" method="post" id="newGrade">

                  <div class="control-group">
                    <label class="control-label">Nytt betyg:</label>
                      <div class="controls">
                        <p><input id="cbetyg" name="grade" type="text"></p>
                        <input type="hidden" name="studId" value="'. $row['studId'] .'">
                        <input type="hidden" name="courseId" value="'. $row['courseId'] .'">
                      </div>
                  </div>

                  <div class="form-actions">
                    <input type="submit" name="submit" value="Ändra">
                  </div>
                </form>

我现在的问题是,只有第一行崩溃并且可以使用更新。当我点击其他行时,第一行崩溃......有人可以告诉我我能做什么吗?而且,如果我对所有行进行折叠工作,我的更新是否仍适用于每一行?

My table looks like this (click here)

谢谢!

1 个答案:

答案 0 :(得分:0)

您在任何字段中使用相同的collapseUpdate目标。尝试修改这些行:

代替

echo '<tr data-toggle="collapse" data-target="#collapseUpdate">';

使用

echo '<tr data-toggle="collapse" data-target="#collapseUpdate'.$row['studId'].'">';

而是

echo '<td colspan="6" class="hiddenRow" id="collapseRow"><div class="accordian-body collapse" id="collapseUpdate">

使用

echo '<td colspan="6" class="hiddenRow" id="collapseRow"><div class="accordian-body collapse" id="collapseUpdate'.$row['studId'].'">

我怀疑studId在此表中是唯一的。