PDA

View Full Version : displaying data in different table fields


thindrakhya
10-25-2007, 10:57 AM
hi friends ,

i have array of data

dayArray[day]------------- it has day codes like 1,2,3,4

timearray[day][time]----------it is also 2d array

now what i have html table column like following


name-----------day1-----day2--------day3--------day4

what is want is if dayArray[day] == 1 then timearray[day][time] should display data in day 1

and if dayArray[day] == 2 then timearray[day][time] should display data in day2 ... and so on..............


how can i achieve this

mlseim
10-25-2007, 01:53 PM
Something like this ...


echo "<table cellspacing='3' cellpadding='2'>";
// your loop starts here (not sure how you're looping) ...

echo "<tr>";
echo "<td>$name</td>";
if($dayArray[day] == 1){
echo "<td>$timearray[day][time]</td>";
}
if($dayArray[day] == 2){
echo "<td></td><td>$timearray[day][time]</td>";
}
if($dayArray[day] == 3){
echo "<td></td><td></td><td>$timearray[day][time]</td>";
}
if($dayArray[day] == 4){
echo "<td></td><td></td><td></td><td>$timearray[day][time]</td>";
}
echo"</tr>";

//end of loop

echo"</table>";



.

thindrakhya
10-25-2007, 10:37 PM
Something like this ...


echo "<table cellspacing='3' cellpadding='2'>";
// your loop starts here (not sure how you're looping) ...

echo "<tr>";
echo "<td>$name</td>";
if($dayArray[day] == 1){
echo "<td>$timearray[day][time]</td>";
}
if($dayArray[day] == 2){
echo "<td></td><td>$timearray[day][time]</td>";
}
if($dayArray[day] == 3){
echo "<td></td><td></td><td>$timearray[day][time]</td>";
}
if($dayArray[day] == 4){
echo "<td></td><td></td><td></td><td>$timearray[day][time]</td>";
}
echo"</tr>";

//end of loop

echo"</table>";



.






I also tried the same way but suppose

the loop day[a][b] is 2 dimentional so there are rows of day array

If the loop starts and day day[1][0] = 2 then it will display ok , but
when day[2][0] = 3 then it will display first column at right place but if next array column day[2][1] =4 then it will start counting column from the previou column i.e column = 3 and will display three coulmn after day 3 rathr than it should be 3 coumn after the first column


And it is different evrytime depending upon first dasy found

mlseim
10-26-2007, 01:42 PM
I guess it would be a nested loop then using array counts.
Now, I don't fully understand the arrays, so my example isn't quite right,
but you can get the idea. You need to loop each name through a loop
of days ...


echo "<table cellspacing='3' cellpadding='2'>";

// outer loop (number of days) ... starts here (how many days there are) ...
$no_days=7;
for ($x=0;$x<$no_days;$x++) {

echo "<tr>";
echo "<td>$name</td>";

// inner loop $dayarray ... starts here
for ($y=0;$y<count($dayarray);$y++) {

if($dayArray[$x] == $y){
echo "<td>$timearray[$x][$y]</td>";
}
else{
echo "<td></td>";
}

//end of loop 1
}
echo"</tr>";
//end of loop 2
}

echo"</table>";