i want display name , date specific requirements. eg requirement oracle dba has 3 submittal on various dates.table 'requirement' have field e_id , req_id.
2nd table 'submittal' has req_id, submittal , date fields want display submittal in 1 column , date in column based on requirement.
i tried display array values
$sub="select a.*,b.c_name requirement a,client b a.c_id=b.c_id , e_id='2'"; $sub1=mysql_query($sub); while($sfet=mysql_fetch_assoc($sub1)) { echo '<tr>'; $req_id=$sfet['req_id']; echo '<td>'.$sfet['c_name'].'</td>'; echo '<td>'.$sfet['title'].'</td>'; $was="select * resume req_id='$req_id'"; $was1=mysql_query($was); while($wfet=mysql_fetch_assoc($was1)) { $array[] = $wfet; } echo '<td>'; echo $array[]['username']; echo '</td>'; echo '<td>'; echo $array[]['date']; echo '</td>'; echo '</tr>'; }
change code follows:
while($sfet=mysql_fetch_assoc($sub1)) { echo '<tr>'; $req_id=$sfet['req_id']; echo '<td>'.$sfet['c_name'].'</td>'; echo '<td>'.$sfet['title'].'</td>'; $was="select * resume req_id='$req_id'"; $was1=mysql_query($was); $username = $date = []; while($wfet=mysql_fetch_assoc($was1)) { $username[] = $wfet['username']; $date[] = $wfet['date']; } echo '<td>'; echo implode('<br>',$username); echo '</td>'; echo '<td>'; echo implode('<br>',$date); echo '</td>'; echo '</tr>'; }
edit: better solution use group_concat
follows:
$sub = "select a.*, b.c_name, group_concat(c.username order c.date separator '<br>') g_username, group_concat(c.date order c.date separator '<br>') g_date requirement join client b on a.c_id=b.c_id join resume c on a.req_id=c.req_id group a.req_id"; $sub1=mysql_query($sub); while($sfet=mysql_fetch_assoc($sub1)) { echo '<tr>'; $req_id=$sfet['req_id']; echo '<td>'.$sfet['c_name'].'</td>'; echo '<td>'.$sfet['title'].'</td>'; echo '<td>'.$sfet['g_username'].'</td>'; echo '<td>'.$sfet['g_date'].'</td>'; echo '</tr>'; }
Comments
Post a Comment