Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $dsn = 'mysql:host=localhost;dbname=laplaza;charset:UTF8';
- $user = 'root';
- $pass = '';
- $driver_options = array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8', PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION );
- try{
- $db = new PDO($dsn,$user,$pass, $driver_options);
- }catch(PDOException $e){
- echo "error";
- }
- $user = new Users;
- $mapper = new UserMapper( $db );
- $user->set_id( 104 );
- $mapper->fetch( $user );
- echo $user->get_fullname();
- class userMapper{
- private $_pdo;
- function __construct( $pdo ){
- $this->_pdo = $pdo;
- }
- public function fetch($user){
- $params = array(':id'=> &$this->_userid);
- $query = "SELECT up.birthday, up.photo_thumb AS 'avatar',
- u.id, u.firstname, u.lastname, u.sex, u.bostadsort, u.user_level AS 'isadmin',
- u.last_access AS 'lastaccess', u.lastname AS 'fullname' FROM users u
- INNER JOIN users_profile up ON (up.uID = u.id)
- WHERE u.id=:id";
- $stmt = $this->_pdo->prepare($query);
- $stmt->bindValue(":id", $user->id());
- $stmt->execute();
- $data = $stmt->fetch( PDO::FETCH_ASSOC );
- $array = array_shift( $data );
- $user->assign( $array );
- }
- }
- class Users
- {
- private $_userid;
- private $_isadmin;
- private $_fullname;
- private $_firstname;
- private $_sex;
- private $_bostadsort;
- private $_avatar;
- private $_birthday;
- private $_lastaccess;
- private $time;
- private $_mapper;
- function __construct()
- {
- $this->time = time();
- }
- public function assign($data)
- {
- if(is_array($data)){
- foreach ( $data as $name => $value)
- {
- $this->{'_'.$name} = $value;
- }
- }
- }
- public function set_id($id)
- {
- $this->_userid = $id;
- }
- public function id()
- {
- if ( $this->_userid == NULL )
- {
- $this->assign( $this->_fetch() );
- }
- return $this->_userid;
- }
- public function get_fullname()
- {
- return $this->_fullname;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement