获取下拉列表的另一个表值

时间:2016-03-07 11:51:05

标签: php html mysql web while-loop

我有一个显示来自table student的数据的while循环和一个额外的列,该列显示来自employee表id的下拉选项,选中后,更新student表中的id。我有以下代码,但在显示时,每行只显示雇主表中的1个数据。

这是while循环。任何帮助将不胜感激,提前谢谢。

while(($row = mysql_fetch_array($search_result)) && ($row1 =mysql_fetch_array($search_result2))){
echo"<form action=manualallocation.php method=post>";
echo"<tr>";
echo "<td>" . $row['stud_ID']."</td>";
echo "<td>" . $row['stud_NAME']."</td>";
echo "<td>"."<Select name='ex1'>"."<option value='" .$row1['emp_id'] ."'>" .$row1['emp_id'] ."</option>"."</select>";
echo "<td>" . "<input type='char' name='emp_location' value='" .$row1['emp_location'] . "'/> </td>";
echo "<td>" . "<input type='char' name='stud_FIELDOFSTUDY' value='" .$row['stud_FIELDOFSTUDY'] . "'/> </td>";
echo "<td>" . "<input type='char' name='student_yearCompleted' value='" .$row['student_yearCompleted'] . "'/> </td>";
echo "<input type='hidden' name=hidden value=" . $row['stud_ID'] . ">";
echo "<td>" . "<input type='submit' name='submit' value=update". "></td>";
echo "</tr>";
echo "</form>";
}

2 个答案:

答案 0 :(得分:0)

while(($row = mysql_fetch_array($search_result)) && ($row = mysql_fetch_array($search_result2))){

在这里,您使用第二个语句重写$row变量。你应该使用不同的变量。

while(($row_stud = mysql_fetch_array($search_result)) && ($row_emp = mysql_fetch_array($search_result2))){

然后在处理emp数据时使用$row_emp

$row_emp['emp_id']

和学生一起 - $row_stud

$row_stud['stud_ID']    

答案 1 :(得分:0)

1)&&替换为and。请查看此link以获取文档。

注意'and vs &&''|| vs or'

之间的优先级差异
<?php
$bool = true && false;
var_dump($bool); // false, that's expected

$bool = true and false;
var_dump($bool); // true, ouch!
?>

因为&#39;和/或&#39;优先级低于&#39; =&#39;但是&#39; || /&amp;&amp;&#39;有更高的

2)在while循环$row1$row2中使用两个不同的变量。所以第一个变量不能覆盖第二个。

while(($row1 = mysql_fetch_array($search_result)) and ($row2 = mysql_fetch_array($search_result2)))

对于您的下拉菜单,请检查以下链接: -

Link1

Link2

警告

  

mysql_ *在PHP 5.5.0中已弃用,并且已在PHP中删除   7.0.0。相反,应该使用MySQLi或PDO_MySQL扩展。

希望它会对你有所帮助:)。