Klasa wygląda tak:
<?php class IP{ protected $_db; public function __construct(DB $db) { $this->_db=$db; } /** * Add new IP * @param string $ip * @throws Exception */ public function add($ip) { $result=$this->_db->prepare("INSERT INTO zbanowanie VALUES('',:ip)"); $result->bindParam(':ip', $ip, PDO::PARAM_STR); if(!$result->execute()){ throw new Exception('IP nie zostało zbanowane!'); } } /** * Unlock IP * @param string $ip * @throws Exception */ public function unlock($ip) { $result=$this->_db->prepare("DELETE FROM zbanowane WHERE ip=:ip"); $result->bindParam(':ip', $ip, PDO::PARAM_STR); if(!$result->execute()){ throw new Exception('IP nie zostało odbanowane!'); } } /** * Show all blocked IP * @throws Exception */ public function showAll() { $result=$this->db->prepare("SELECT * FROM zbanowane"); if(!$result->execute()) { throw new Exception("Wystąpił bląd podczas pobierania listy IP!"); }else{ $wynik=$result->fetch(PDO::FETCH_ASSOC); return $wynik; } } /** * Show selected IP * @param int $id */ public function showOne($id) { $result=$this->db->prepare("SELECT ip FROM zbanowane WHERE id=:id limit 1"); $result->bindParam(':id',$id, PDO::PARAM_INT); if(!$result->execute()) { throw new Exception("Wystąpił bląd podczas pobierania zbanowanego IP!"); }else{ $wynik=$result->fetch(PDO::FETCH_ASSOC); return $wynik; } } }
Chodzi mi o metody showAll() i showOne() czy jest jakiś sposób, aby zrobić jedną uniwersalną metodę do pobrania jednego, jak i wszystkich IP. Czy jedyny sposób to taki jaki zastosowałem?