Assistance with a class method in PHP -
i trying make function can pass mysql query , result or error, should check see if user running code admin, if session variable holds number count of mysql queries ran on page , increment 1 number , set session, if user admin show error messages.
i know not best code appear should work? tips improve please.
you can see running method gets session variables value, set variable in current method, increment it's value 1 number , run setter method save session again. not sure if correct way of doing that? need run methods , save them local variable am?
also getting error
fatal error: using $this when not in object context in c:\webserver\htdocs\project2\includes\classes\database.class.php on line 37
line 37
$this->user_role = $session->get('user_role');
method...
public static function query($sql) { global $session; // $session object //get session value see if user admin $this->user_role = $session->get('user_role'); //if user admin, query counter session value , +1 , reset session variable. if ($this->user_role >= 9){ $this->querie_counter = $session->get('querie_counter'); $this->querie_counter++; // add +1 number $session->set('querie_counter',$this->querie_counter) } //run mysql query $result = mysql_query($sql); if (!$result) { // if admin viewing show sql code , error returned if($this->user_role >= 9){ $error = '<br><center><font size="+1" face="arial" color="red">an internal error has occurred.<br> error has been recorded review</font></center><br>'; $sql_formatted = highlight_string(stripslashes($sql), true); $error .= '<b>the mysql syntax used</b><br>' . $sql_formatted . '<br><br><b>the mysql error returned</b><br>' . mysql_error(); } die($error); } return $result; }
hmm no 1 has read error or?
**fatal error: using $this when not in object context in c:\webserver\htdocs\project2\includes\classes\database.class.php on line 37**
ok cant use $this
in static function have use self::users
public static function query($sql) { global $session; // $session object //get session value see if user admin self::user_role = $session->get('user_role'); //if user admin, query counter session value , +1 , reset session variable. if (self::user_role >= 9){ self::querie_counter = $session->get('querie_counter'); self::querie_counter++; // add +1 number $session->set('querie_counter',$this->querie_counter) } //run mysql query $result = mysql_query($sql); if (!$result) { // if admin viewing show sql code , error returned if(self::user_role >= 9){ $error = '<br><center><font size="+1" face="arial" color="red">an internal error has occured.<br> error has been recorded review</font></center><br>'; $sql_formatted = highlight_string(stripslashes($sql), true); $error .= '<b>the mysql syntax used</b><br>' . $sql_formatted . '<br><br><b>the mysql error returned</b><br>' . mysql_error(); } die($error); } return $result; }
Comments
Post a Comment