Hey Could anyone give me a hand simplifying this code to use an array or something: http://pastebin.com/m6eec7582 Right now it's a bit long winded and I'm sure I could use a loop/array of some sort to shorten it down and make it more efficient. Thanks
Just a quick try: <? $days = array( 'mon'=>array('name'=>'Monday'), 'tue'=>array('name'=>'Tuesday'), 'wed'=>array('name'=>'Wednesday'), 'thu'=>array('name'=>'Thursday'), 'fri'=>array('name'=>'Friday'), 'sat'=>array('name'=>'Saturday'), 'sun'=>array('name'=>'Sunday')); while($row = mysql_fetch_object($query)) { if (isset($days[$row->day]['value'])) $days[$row->day]['value'] .= '<p>' . $row->assignment_id . '</p>'; else $days[$row->day]['value'] = '<p>' . $row->assignment_id . '</p>'; } foreach ($days as $d) { echo "<h2>{$d['name']}</h2>"; if (isset($d['value'])) echo $d['value']; } ?> PHP:
I think this will do, untested. <?php $aMon = ''; $aTue = ''; $aWed = ''; $aThu = ''; $aFri = ''; $aSat = ''; $aSun = ''; $day_array = array('Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'); while($row = mysql_fetch_object($query)) { $rowday = 'a'.ucfirst($row->day); ${$rowday} .= '<p>' . $row->assignment_id . '</p>'; } foreach ($day_array as $day) { $prepare_var = 'a'.strtoupper($day[0]).$day[1].$day[2]; echo "<h2>$day</h2>".${$prepare_var}; } ?> PHP: Depends on your server, this line may be not neccessary. - ads2help