【发布时间】:2016-05-30 21:04:10
【问题描述】:
我是 PHP 新手,现在在 IF-ELSE 条件下遇到一些问题
到目前为止,这些是我的代码。
<?php
include('DBconnect.php');
mysql_query("USE onlinerecruitment");
$app_id_check = "";
$app_pos_check = "";
$result = mysql_query("SELECT * FROM applicant_skill ");
?>
<table style="width:100%">
<tr>
<th>Applicant's Name</th>
<th>Last Name</th>
<th>Position Selected</th>
<th></th>
<th></th>
</tr>
<?php
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$check_app_id = $row['App_Data_ID'];
$check_pos_id = $row['Position_ID'];
if($app_id_check != $check_app_id && $app_pos_check != $check_pos_id){
$skill_id = $row['Skill_ID'];
$app_id = $row['App_Data_ID'];
$result01 =mysql_query("SELECT * FROM required_skills WHERE Skill_ID = '".$skill_id."' ");
$row01 = mysql_fetch_array($result01, MYSQL_ASSOC);
$skill_name = $row01['Skill_Name'];
$pos_id = $row01['Position_ID'];
$result02 = mysql_query("SELECT * FROM position WHERE Position_ID = '".$pos_id."' ");
$row02 = mysql_fetch_array($result02, MYSQL_ASSOC);
$result1 = mysql_query("SELECT * FROM application_data_file WHERE App_Data_ID = '".$app_id."' ");
$row1 = mysql_fetch_array($result1, MYSQL_ASSOC);
$app_mail = $row1['App_Email'];
$result2 = mysql_query("SELECT * FROM applicant_acct WHERE App_Email = '".$app_mail."' ");
$row2 = mysql_fetch_array($result2, MYSQL_ASSOC);
echo "<TR>";
echo "<TD>".$row2['App_Name']."</TD>";
echo "<TD>".$row2['App_LName']."</TD>";
echo "<TD>".$row02['Position_Name']."</TD>";
echo "<TD><a href='edit-testing-score-form.php?app_id=".$row['App_Data_ID']."&pos_id=".$row['Position_ID']."'>Edit Testing Score</a></TD>";
echo "<TD><a onclick='javascript:confirmationDelete($(this));return false;' href='delete-testing-score.php?app_id=".$row['App_Data_ID']."&pos_id=".$row['Position_ID']."'>Delete</a></TD>";
echo "</TR>";
$app_id_check = $app_id;
$app_pos_check = $pos_id;
}
}
?>
</table>
这是我目前的结果
这是我在数据库中的数据
根据我的数据库图像,结果不应像第一个表那样是表中的 2 行。它现在只打印出 App_Data_ID 00001 和 00012,因为它们是第一个没有相同 Position_ID 的人。
我的预期结果,表格应该打印 App_Data_ID 00001,00002,00012,00013,00014 等等。只有 App_Data_ID 和 Position_ID 与上一个完全相同时,不应打印。
我认为我在 IF-ELSE 条件下的逻辑有些错误,但我不知道为什么,请帮忙。
【问题讨论】:
标签: php mysql if-statement