public function delete() { $DBH = DB::connect(); $sql = 'DELETE FROM ' . static::$table . ' WHERE id = ?'; $STH = $DBH->prepare($sql); return $STH->execute($this->id); }
public static function findLastNews(int $n) { $sql = 'SELECT * FROM ' . static::TABLE . sprintf(' ORDER BY id DESC LIMIT %d', $n); $db = DB::instance(); $db->setClass(static::class); $res = $db->query($sql); return [] == $res ? false : $res; }
public static function validate($email, $pass) { $sql = 'SELECT * FROM ' . static::TABLE . ' WHERE email=:email'; $db = DB::instance(); $db->setClass(static::class); $admin = $db->query($sql, [':email' => $email]); if ([] == $admin) { return false; } else { if ($pass == $admin[0]->pass) { $_SESSION['admin'] = $email; return true; } } }
public function __construct($user = null) { $this->_db = DB::connect(); $this->_sessionName = Config::get('session/session_name'); $this->_cookieName = Config::get('remember/cookie_name'); if (!$user) { if (Session::exists($this->_sessionName)) { $user = Session::get($this->_sessionName); if ($this->find($user)) { $this->_isLoggedIn = true; } else { // logout } } } else { $this->find($user); } }
public static function haversine($query, $lat, $lng, $max_distance = 20, $units = 'kilometers', $fields = false) { if (empty($lat)) { $lat = 0; } if (empty($lng)) { $lng = 0; } /* * Allow for changing of units of measurement */ switch ($units) { case 'miles': //radius of the great circle in miles $gr_circle_radius = 3959; break; case 'kilometers': //radius of the great circle in kilometers $gr_circle_radius = 6371; break; } /* * Support the selection of certain fields */ if (!$fields) { $fields = array('users.*', 'users_profile.*', 'users.username as user_name'); } /* * Generate the select field for disctance */ $distance_select = sprintf("\n ROUND(( %d * acos( cos( radians(%s) ) " . " * cos( radians( lat ) ) " . " * cos( radians( lng ) - radians(%s) ) " . " + sin( radians(%s) ) * sin( radians( lat ) ) " . " ) " . ")\n , 2 ) " . "AS distance\n ", $gr_circle_radius, $lat, $lng, $lat); $data = $query->select(DB::raw(implode(',', $fields) . ',' . $distance_select))->having('distance', '<=', $max_distance)->orderBy('distance', 'ASC')->get(); //echo '<pre>'; //echo $query->toSQL(); //echo $distance_select; //echo '</pre>'; //die(); // //$queries = DB::getQueryLog(); //$last_query = end($queries); //var_dump($last_query); //die(); return $data; }
<?php //namespace app\core; use app\models\Cookie; use app\models\Config; use app\models\Session; use app\models\User; use app\classes\DB; session_start(); $GLOBALS['config'] = ['mysql' => ['host' => '127.0.0.1', 'username' => 'root', 'password' => 'root', 'db' => 'test'], 'remember' => ['cookie_name' => 'hash', 'cookie_expiry' => 604800], 'session' => ['session_name' => 'root', 'token_name' => 'token']]; spl_autoload_register(function ($class) { require_once 'classes/' . $class . '.php'; }); require_once "functions/sanitize.php"; if (Cookie::exists(Config::get('remember/cookie_name')) && !Session::exists(Config::get('session/session_name'))) { $hash = Cookie::get(Config::get('remember/cookie_name')); $hashCheck = DB::connect()->get('users_session', ['hash', '=', $hash]); if ($hashCheck->count()) { $user = new User($hashCheck->first()->user_id); $user->login(); } }
//die; require_once 'autoload.php'; $ctrl = isset($_GET['ctrl']) ? $_GET['ctrl'] : 'News'; $act = isset($_GET['act']) ? $_GET['act'] : 'All'; $classController = 'app\\controllers\\' . $ctrl . 'Controller'; //require __DIR__ . '/classes/DB.php'; $controller = new $classController(); $method = "action" . $act; $controller->{$method}(); if (require_once 'core/init.php') { echo 1; } use app\models\Session; use app\models\User; use app\classes\DB; $user = DB::connect(); if (Session::exists('home')) { echo "<p><b>" . Session::flash('home') . "</b></p>"; } $user = new User(); if ($user->isLoggedIn()) { ?> <p>Hello, <a href="profile.php?user=<?php echo escape($user->data()->username); ?> "><?php echo $user->data()->username; ?> </a></p> <ul> <li>You can <a href="logout.php">log out</a> here!</li>
public function delete() { $sql = 'DELETE FROM ' . static::$table . ' WHERE id=:id'; $data = [":id" => $this->id]; $db = new DB(); $db->execute($sql, $data); }