server = $server; $this->user = $user; $this->pass = $pass; $this->database = $database; } //FUNÇÃO QUE CONECTA NO BANCO public function PDOConn(){ try{ if(is_null(self::$conn)) self::$conn = new PDO('mysql:host='.$this->server.';dbname='.$this->database.'',''.$this->user.'',''.$this->pass); }catch (Exception $e){ exit("Erro de conexão com banco de dados: ".$e->getMessage()); } return self::$conn; } /* * @access: public * @author: Willian Knippelberg Francisco * @param: $sql : string contendo sua query sql; * @return : PDO::EXECUTE -> retorna a execução da sua query (retorno semelhante ao mysql_query) * @example: $exec = $conn->pdo_query("SELECT * FROM TABLE"); * em caso de erro a variavel pdoError será preenchida e você podera ler */ public function pdo_query($sql){ // zera o erro $this->pdoError = ''; $exec = $this->PDOConn()->prepare($sql); if($exec->execute() === false){ $arr = $exec->errorInfo(); // tratamento do erro - simplificado $this->pdoError = "Erro ".$arr[0]." - N° ".$arr[1]. ': '.$arr[2]; return false; }else{ return $exec; } } /* * @access: public * @author: Willian Knippelberg Francisco * @param: PDO::EXECUTE : Retorno do metodo pdo_query($sql) * @return : int -> retorna a quantidade de linhas da execução * @example: $exec = $conn->pdo_query("SELECT * FROM TABLE"); * $total = $conn->pdo_num_rows($exec); */ public function pdo_num_rows($exec){ return $exec->rowCount(); } /* * @access: public * @author: Willian Knippelberg Francisco * @param: PDO::EXECUTE : Retorno do metodo pdo_query($sql) * @return : PDO::FETCH_OBJ -> retorna um objeto contendo o resultado da sua busca * @example: $exec = $conn->pdo_query("SELECT * FROM TABLE"); * while ($list = $conn->pdo_fetch_object($exec)){ * echo $list->collum_name; * } */ public function pdo_fetch_object($exec){ return $exec->fetchObject(); } } //FIM DA CLASSE ?>