Пример #1
0
 public static function attempt($array, $remember = false)
 {
     //Table::show(self::$hashedFields);
     //
     $hashed = array();
     //
     foreach ($array as $key => $value) {
         if (Table::contains(self::$hashedFields, $key)) {
             Table::add($hashed, Hash::make($array[$key]), $key);
         }
     }
     //
     //Table::show($hashed);
     //
     $where = "";
     $ok = false;
     //
     $i = 0;
     foreach ($array as $key => $value) {
         if ($i > 0) {
             $where .= " and ";
         }
         if (Table::contains(self::$hashedFields, $key)) {
             $where .= "{$key}='" . $hashed[$key] . "' ";
         } else {
             $where .= "{$key}='{$value}' ";
         }
         $i++;
     }
     $sql = "select * from " . self::$table . " where " . $where;
     //echo $sql;
     //
     if (Database::countS($sql) > 0) {
         //returning true value
         $ok = true;
         //
         // session
         $user = Database::read($sql);
         $saved = Config::get('auth.saved_fields');
         //
         $static = array();
         //
         foreach ($user[0] as $key => $value) {
             if (array_key_exists($key, $saved)) {
                 $static[$key] = $value;
             }
         }
         //
         Session::put('auths', $static);
         //
         // remember cookie
         if ($remember) {
             Cookie::create(Config::get('auth.rememeber_cookie'), $user[0]["rememberToken"], time() + 3600 * 24 * 7);
         }
     }
     //
     return $ok;
 }
Пример #2
0
 public static function instance()
 {
     if (!self::$instance) {
         self::$instance = new Database();
         self::$read = new mysqli('SERVER', 'USER', 'PASS');
         self::$write = new mysqli('SERVER', 'USER', 'PASS');
     }
     return self::$instance;
 }
Пример #3
0
 public function paginate($RowsPerPage)
 {
     // count data
     $sql = "select count(*) as nbRows from " . $this->name;
     $var = Database::read($sql);
     $this->RowsPerPage = $RowsPerPage;
     $this->nbRows = $var[0]['nbRows'];
     $this->nbPages = ceil($this->nbRows / $RowsPerPage);
     //if isset get
     $this->CurrentPage = 1;
     if (isset($_GET[Config::get('view.pagination_param')]) && !empty($_GET[Config::get('view.pagination_param')])) {
         if ($_GET[Config::get('view.pagination_param')] > 0 && $_GET[Config::get('view.pagination_param')] <= $this->nbPages) {
             $this->CurrentPage = Res::get(Config::get('view.pagination_param'));
         }
     }
     //get Data
     $r = array();
     $sql = "select * from " . $this->name . " Limit " . ($this->CurrentPage - 1) * $this->RowsPerPage . ",{$this->RowsPerPage}";
     $this->data = Database::read($sql);
     //
     return $this;
 }
Пример #4
0
 public static function where($where)
 {
     $self = self::instance();
     $rows = new ModelArray();
     //
     $sql = "select * from " . $self->DBtable . " where {$where} ";
     $data = Database::read($sql, 1);
     //
     foreach ($data as $key => $value) {
         $row = self::instance();
         //
         foreach ($value as $key2 => $value2) {
             $row->{$key2} = $value2;
         }
         //
         $rows->add($row);
     }
     //
     return $rows;
 }
Пример #5
0
 public function paginate($num)
 {
     //
     // count data
     $sql = "select count(*) as nbRows from " . $this->table;
     $var = Database::read($sql);
     $nbRows = $var[0]['nbRows'];
     $nbPages = ceil($nbRows / $num);
     //
     //if isset get
     $page = 1;
     if (isset($_GET[Config::get('view.pagination_param')]) && !empty($_GET[Config::get('view.pagination_param')])) {
         if ($_GET[Config::get('view.pagination_param')] > 0 && $_GET[Config::get('view.pagination_param')] <= $nbPages) {
             $page = Res::get(Config::get('view.pagination_param'));
         }
     }
     //
     $r = array();
     //
     $sql = "select * from " . $this->table . " Limit " . ($page - 1) * $num . ",{$num}";
     $var = Database::read($sql);
     foreach ($var as $key => $value) {
         //echo $value[0];
         $o = new self($value[0], $this->table);
         //print_r(get_object_vars($o));
         array_push($r, $o);
     }
     //
     // call the data array
     $g = new DataArray($r, true, $nbRows, $num, $page);
     return $g;
 }
Пример #6
0
 public function getAll()
 {
     return \Database::read('select * from ' . $this->DatabaseTableName());
 }
Пример #7
0
 public static function find($id1 = 1, $id2 = null, $id3 = null)
 {
     self::$table = static::$reference;
     //echo self::$table;
     //self::keys();
     //print_r(self::$keys);
     //self::$keys=array();
     $o = new self(self::$table);
     //print_r(get_object_vars($o));
     //echo "<br>";
     //print_r(self::$keys);
     //
     $ids = array($id1, $id2, $id3);
     //
     $sql = null;
     $sql = "select * from " . self::$table . " ";
     if (count(self::$keys) < 3) {
         $i = 0;
         foreach (self::$keys as $value) {
             if ($i > 0) {
                 $sql .= " and ";
             }
             if ($i == 0) {
                 $sql .= " where ";
             }
             $sql .= " " . self::$keys[$i] . "='" . $ids[$i] . "' ";
             $i++;
         }
     }
     $r = Database::read($sql);
     //
     $nums = array();
     for ($i = 0; $i < 201; $i++) {
         $nums[] = $i;
     }
     $i = 0;
     foreach ($r[0] as $key => $value) {
         if ($i % 2 != 0) {
             $o->{$key} = $value;
         }
         $i++;
     }
     //print_r(get_object_vars($o));
     //echo "<br><br>";
     return $o;
 }