简体   繁体   English

下拉表格中的列表

[英]Drop down list in a table

Why does my dropdown list seperate in the table to diff columns. 为什么我的下拉列表在表格中分开来区分列。 Example I want 3 options to be displayed in the dropdown list. 示例我希望在下拉列表中显示3个选项。 These are data from my database. 这些是我数据库中的数据。

Eg: company a, company b to be displayed on the drop down list. 例如: company a, company b将显示在下拉列表中。

Instead now only one option (company a) is available on the drop list and (company b) is displayed on the next row of the table instead of together on a single drop down list. 相反,现在只有一个选项(company a)可用于下拉列表, (company b)显示在表的下一行而不是一起显示在单个下拉列表中。

  <?
$result = mysqli_query($con,"SELECT admin_no, name, GPA, gender, job_details.job_title, job_details.no_of_vacancy FROM student_details, job_details ORDER BY `GPA` DESC ");

            $result2 = mysqli_query($con, "SELECT job_title FROM job_details;");
            $row2 = mysqli_fetch_assoc($result2);

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

                while ($row2 = mysqli_fetch_array($result2))
                  {


              echo "<tr>";
              echo "<td bgColor=white>" . $row['admin_no'] . "</td>";
              echo "<td bgColor=white>" . $row['name'] . "</td>";
              echo "<td bgColor=white>" . $row['GPA'] . "</td>";
              echo "<td bgColor=white>" . $row['gender'] . "</td>"; 
              echo "<td><select name='ddl' onclick='if(this.value != '') { myform.submit(); }'><option value='". $row2['job_title'] ."'> ". $row2['job_title'] ."</option></td>";
              echo "</tr>";
              }
              }
            echo "</table>";



    ?>
    </form>

Try this: 尝试这个:

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

          echo "<tr>";
          echo "<td bgColor=white>" . $row['admin_no'] . "</td>";
          echo "<td bgColor=white>" . $row['name'] . "</td>";
          echo "<td bgColor=white>" . $row['GPA'] . "</td>";
          echo "<td bgColor=white>" . $row['gender'] . "</td>"; 

          echo "<td><select name='ddl' onclick='if(this.value != '') { myform.submit(); }'>";
       while ($row2 = mysqli_fetch_array($result2))
              {
         echo "<option value='". $row2['job_title'] ."'> ". $row2['job_title'] ."</option>";
            }
         echo "</select></td>";
          echo "</tr>";

          }

Try this, You have missed to close </select> tag, I have rewritten the code ie moved <option> tag generation above table generation section. 试试这个,你错过了关闭</select>标签,我已经重写了代码,即在表生成部分上面移动<option>标签生成。 So that to avoid unneccessary looping. 这样可以避免不必要的循环。

    <?php
        $result = mysqli_query($con,"SELECT admin_no, name, GPA, gender, job_details.job_title, job_details.no_of_vacancy FROM student_details, job_details ORDER BY `GPA` DESC ");

            $result2 = mysqli_query($con, "SELECT job_title FROM job_details");
            $row2 = mysqli_fetch_assoc($result2);

             /*options sections start*/
            $options= '';
            while ($row2 = mysqli_fetch_array($result2))
            {
                $options .='<option value="'. $row2['job_title'] .'"> '. $row2['job_title'] .'</option>';
            }
            /*options sections end*/

            while($row = mysqli_fetch_assoc($result))
              {     
                  echo "<tr>";
                  echo "<td bgColor=white>" . $row['admin_no'] . "</td>";
                  echo "<td bgColor=white>" . $row['name'] . "</td>";
                  echo "<td bgColor=white>" . $row['GPA'] . "</td>";
                  echo "<td bgColor=white>" . $row['gender'] . "</td>"; 
                  echo "<td><select name='ddl' onclick='if(this.value != '') { myform.submit(); }'>".$options."</select></td>";
                  echo "</tr>";              
              }
            echo "</table>";
    ?>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM