I have an admin panel that each section contains a set of tools so on each page I can set $toolsneeded = "admin" or $toolsneeded = "employees"; etc.
I keep recieving this error: Warning: Division by zero in /home/www/website/admin/include/adminclass.php on line 250 Warning: Variable passed to each() is not an array or object in /home/www/website/admin/include/adminclass.php on line 251 This is line 250: $height = 100/count($tools); Here is the page that uses the class. <? include ('include/adminclass.php'); $adminroot = new adminpage(); $title = "Administration Portal"; $redux = "Hello Some Temporary Content"; $adminroot->SetContent($redux); $toolsneeded = "admin"; $adminroot->SetTools($toolsneeded); $adminroot->Display($employeeid,$password,$title); ?> Here is my class file with some of the functions removed for brevity. I have real problems understanding $this-> so you may find that Im using it in the wrong place or not using it where I should be. <? ## ##CLASS DECLARATION ## class ADMINPAGE { //class adminpage's attributes ## ##VARIABLE DECLARATION ## var $toolsneeded; var $tools; var $content; var $toolsadmin = array("process orders" => "orders_root.php", "products" => "products_root.php" ); ## ##SET FUNCTIONS ## function SetContent($newContent) { $this->content = $newContent; } function SetTools($newTools) { $this->toolsneeded = $newTools; } ## ##DISPLAY FUNCTION ## function Display($employeeid,$password,$title) { session_start(); session_register("employeeid"); $count = $this -> VerifyLogin($employeeid,$password); switch($count) { case "1": $this -> DisplayHeader($title,$employeeid); echo "<center><br><table width=\"500\"><tr><td>"; $this -> DisplayMenu($this->buttons); echo "<br>"; $this -> DisplayContent($this->tools,$this->content); echo "</td></tr></table></center><br>"; $this -> DisplayFooter(); break; default: $title = "Please Try Again"; $employeeid = ""; $this -> DisplayHeader($title,$employeeid); echo "<center><br><table width=\"500\"><tr><td valign=\"top\">"; echo "Your username and password combination is incorrect. Please try again."; $this -> DisplayLogInForm(); echo "</td></tr></table></center><br>"; $this -> DisplayFooter(); break; } } ## ##DISPLAY TOOLS FUNCTION ## function DisplayTools($tools) { echo "<table width = \"100%\" bgcolor=\"#333333\" cellpadding=\"1\" cellspacing=\"0\"><tr><td>"; echo "<table width=\"100%\" bgcolor=\"#ff6600\" cellpadding=\"5\" cellspacing=\"0\"><tr><td valign=\"middle\" align=\"right\">"; echo"<table width=\"100%\" bgcolor=\"#333333\" cellpadding=\"1\" cellspacing=\"0\"><tr><td>"; echo"<table width=\"100%\" height=\"20\" border=\"0\" cellpadding=\"3\" cellspacking=\"0\" bgcolor=\"whitesmoke\"><tr>"; ### ###Line 250 ### $height = 100/count($tools); ### ### while(list($name,$url) = each($tools)) { $this ->ToolsLayout($height,$name,$url); } echo "</tr></table>"; echo "</td></tr></table>"; echo "</td></tr></table>"; echo "</td></tr></table>"; } ## ##TOOLS LAYOUT FUNCTION ## function ToolsLayout($height,$name,$url) { echo "<td width =\"$width%\" valign=\"middle\">"; echo "<div align=\"center\">[ <a href = \"$url\">$name</a> ]</div></td>"; } function ToolSelected($toolsneeded) { switch($toolsneeded) { case "admin": DisplayTools($toolsadmin); break; case "orders": echo "Order Tools"; break; default: echo "Your Tools do not work"; } } ## ##DISPLAY CONTENT FUNCTION ## function DisplayContent($toolsneeded,$content) { ?> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <table width="100%" border="0" cellpadding="1" cellspacing="0" bgcolor="333333"> <tr> <td valign="top"> <table cellspacing="0" cellpadding="3" border="0" bgcolor="#FF6600" width="100%"> <tr> <td width="18%" valign="top"> <table cellspacing="1" cellpadding="0" border="0" bgcolor="#333333"> <tr> <td> <table cellpadding="2" cellspacing="0" border="0" bgcolor="#ffffff" width="100%"> <tr><td><img src="/images/designelements/spacer.gif" width="130" height="1"></td></tr> <tr> <td> <? $toolsneedeed = $this->DisplayTools($toolsneeded); ?> </td> </tr> </table> </td> </tr> </table> </td> <td width="82%" rowspan="2" align="right" valign="top"> <table width="100%" cellpadding="0" cellspacing="0"> <tr> <td> <table width="100%" border="0" cellpadding="1" cellspacing="0" bgcolor="#333333"> <tr> <td> <table width="100%" border="0" cellpadding="1" cellspacing="0" bgcolor="whitesmoke"> <tr bgcolor="#333333"><td colspan="3"><img src="/images/designelements/spacer.gif" width="300" height="1"></td></tr> <tr bgcolor="#333333"><td width="2%"> <img src="/images/designelements/spacer.gif" width="2" height="10"> </td> <td width="93%" class="small"><font color="#FFFFFF"><b>admin</b></font> </td> <td><img src="/images/designelements/spacer.gif" width="1" height="1"></td> </tr> <tr bgcolor="#333333"><td colspan="3"><img src="/images/designelements/spacer.gif" width="300" height="1"></td></tr> <tr valign="top"> <td colspan="3"> <div align="left"> <table cellspacing="5" width="100%"> <tr><td><? echo $content; ?> </tr></td> </table> </div> <tr> <td colspan="2" align="center" class="small"> <img src="../images/designelements/spacer.gif" width="1" height="1"></table></td> </tr> </table> <br></td> </tr> <tr> <td align="right" class="small">a and i balancing administration</td> </tr> </table></td> </tr> </table></td> </tr> </table></td> </tr> </table> <? } -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php