ankycooper Posted September 29, 2006 Share Posted September 29, 2006 hi i have a database in which there are following fieldsnamemonthstartdateenddatestarttimeendtimewf1wf2wf3lets take a sample datajay petermarch2006-09-032006-09-2407:0016:00SaturdaySundayNAthere are sevral such recordsi want to populate a table like this (see the attachment)Need some helpBut The code only populates 1st record[code]<html><link rel="stylesheet" type="text/css" href="../scripts/main.css" ><head><title>Roster Management System</title></head><body bgcolor="#C7E1F4"><div align="center"> <center><table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" bgcolor="#EEEEEE"> <tr style="font-size: 12px; color: #ffffff; font-family: Arial, Helvetica, sans-serif"> <td class="info" style='border:1px solid #C7E1F4; background-color: #2955B5' width="100" height="1"> <p align="left"><b><font color='#FFFFFF'> Date </font></b></td> <td class="info" style="border:1px solid #C7E1F4; background-color: #2955B5" width="65" height="1"> <p align="left"><b><font color='#FFFFFF'> Day </font></b></td> <td class="info" style="border:1px solid #C7E1F4; background-color: #2955B5" width="100" height="1"> <p align="left"><b><font color='#FFFFFF'> Time </font></b></td><?phpfunction dateconvert($date,$func) { if ($func == 1){ //insert conversion list($day, $month, $year) = split('[/.-]', $date); $date = "$year-$month-$day"; return $date; } if ($func == 2){ //output conversion list($year, $month, $day) = split('[-.]', $date); $date = "$day/$month/$year"; return $date; }}$mmyy=$_GET['mmyy'];include '../config/dbinfo.inc.php';@mysql_connect($host,$user_name,$pass_word);@mysql_select_db($database) or die( "Unable to select database");$sql = "SELECT * FROM emproster where mmyy='$mmyy'"; $sql = "SELECT * FROM emproster where mmyy='$mmyy'"; $res = mysql_query($sql) or die (mysql_error()); $r = mysql_fetch_assoc($res); echo "<td class='info' style='border:1px solid #C7E1F4; background-color: #2955B5' width='150' height='1'> <p align='left'><b><font color='#FFFFFF'> ".$r['name']."</font></b></td>"; echo "</tr>"; $days = (date("j", strtotime($r['edate'])) - date("j", strtotime($r['sdate']))) + 1; $sdate = date("Y-m-d", strtotime($r['sdate'])); for($i=0; $i<$days; $i++){ $day = date("D", strtotime($sdate)); $fullday = date ("l", strtotime($sdate)); if($fullday == $r['wf1']) { $st_time = "<span style='background-color: #FF0000'><b><font color='#FFFFFF'> WOFF </font></b></span>"; $e_time = "<span style='background-color: #FF0000'><b><font color='#FFFFFF'> WOFF </font></b></span>"; } elseif($fullday == $r['wf2']) { $st_time = "<span style='background-color: #FF0000'><b><font color='#FFFFFF'> WOFF </font></b></span>"; $e_time = "<span style='background-color: #FF0000'><b><font color='#FFFFFF'> WOFF </font></b></span>"; } elseif($fullday == $r['wf3']){ $st_time = "<span style='background-color: #FF0000'><b><font color='#FFFFFF'> WOFF </font></b></span>"; $e_time = "<span style='background-color: #FF0000'><b><font color='#FFFFFF'> WOFF </font></b></span>"; } else { $st_time = "<b><font color='#2955B5'><span style='background-color: #FFFF99'> ".$r['stime']." </span></font></b>"; $e_time = "<b><font color='#2955B5'><span style='background-color: #CCFF99'> ".$r['etime']." </span></font></b>"; } $sdate=dateconvert($sdate, 1); echo "<tr>"; echo "<td class='back2' style='border:1px solid #C7E1F4; background-color: #CED7EF' rowspan=2><b><font color='#2955B5'> $sdate</b></font></td>"; echo "<td class='back2' style='border:1px solid #C7E1F4; background-color: #CED7EF' rowspan=2><b><font color='#2955B5'> $day</b></font></td>"; echo "<td class='back2' style='border:1px solid #C7E1F4; background-color: #CED7EF'><b><font color='#2955B5'> Report Time</b></font></td>"; echo "<td class='back2' style='border:1px solid #C7E1F4; background-color: #CED7EF'>$st_time</td>"; echo "</tr>"; echo "<tr>"; echo "<td class='back2' style='border:1px solid #C7E1F4; background-color: #CED7EF'><b><font color='#2955B5'> Drop Time</b></font></td>"; echo "<td class='back2' style='border:1px solid #C7E1F4; background-color: #CED7EF'>$e_time</td>"; echo "</tr>"; $sdate = date("Y-m-d", strtotime("$sdate +1 day")); } echo "</table>";?> </center></div>[/code][attachment deleted by admin] Link to comment https://forums.phpfreaks.com/topic/22480-can-anyone-dare-to-solve-this/ Share on other sites More sharing options...
HuggieBear Posted September 29, 2006 Share Posted September 29, 2006 Yeah, it looks as though you need a while loop around the whole thing.Where you have:[code]<?php$r = mysql_fetch_assoc($res);// All your code here?>[/code]You should probably have:[code]<?phpwhile ($r = mysql_fetch_assoc($res)){ // All your code here}?>[/code]This basically says, while there's still rows in the mysql resource, loop through.RegardsHuggie Link to comment https://forums.phpfreaks.com/topic/22480-can-anyone-dare-to-solve-this/#findComment-100795 Share on other sites More sharing options...
ankycooper Posted September 30, 2006 Author Share Posted September 30, 2006 while repeats the entire thingi just want the last column to be repeatedPlease help Link to comment https://forums.phpfreaks.com/topic/22480-can-anyone-dare-to-solve-this/#findComment-101572 Share on other sites More sharing options...
Barand Posted September 30, 2006 Share Posted September 30, 2006 Do not double postRead the forum guidelines Link to comment https://forums.phpfreaks.com/topic/22480-can-anyone-dare-to-solve-this/#findComment-101624 Share on other sites More sharing options...
Recommended Posts