public function lastWeekImageVisited($imageId) { $NUM_OF_DAYS = 7; $result = []; $query = \db\DAO::getInstance()->prepare("SELECT COUNT(*) AS timeVisited FROM Visits WHERE image_id = {$imageId} AND time = CURDATE() - ?"); for ($i = 0; $i < $NUM_OF_DAYS; $i++) { $query->execute([$i]); $result[date("Y-m-d", strtotime("-{$i} days"))] = $query->fetch()->timeVisited; } return $result = array_reverse($result); }
public function loadAll($where = null) { $sql = "SELECT * FROM " . $this->getTable() . " " . $where; $statement = DAO::getInstance()->prepare($sql); $statement->execute(); if (1 > $statement->rowCount()) { return null; } $resources = $statement->fetchAll(); $collection = array(); $className = get_class($this); //$attributes = $this->getColumns(); foreach ($resources as $singleRow) { $model = new $className(); $model->pk = $singleRow->{$this->getPrimaryKeyColumn()}; $model->data = $singleRow; /*foreach ($attributes as $prop) { $model->$prop = $singleRow->{$prop}; }*/ $collection[] = $model; } return $collection; }
* Date: 10/03/16 * Time: 10:26 */ require_once 'Autoloader.php'; session_start(); if (isset($_SESSION['user_id'])) { header('Location: index.php'); } if (!empty($_POST['submitted'])) { $formValidation = new \validation_library\FormValidation(); $rules = array(); $rules['username'] = '******'; $rules['password'] = '******'; $formValidation->set_rules($rules); if ($formValidation->validate()) { $query = \db\DAO::getInstance()->prepare("SELECT id FROM Users WHERE username = ? AND password = ?"); try { $query->execute([htmlentities($_POST["username"]), sha1($_POST["password"])]); //ako je upit djelovao na neki redak if ($query->rowCount() > 0) { $row = $query->fetch(); $_SESSION["user_id"] = $row->id; header('Location: index.php'); } else { echo "Wrong email or password."; } } catch (PDOException $e) { $errorMessage = "Please, try again or contact admin."; } } else { $formValidation->display_validation_errors();
* Time: 14:38 */ require_once 'Autoloader.php'; session_start(); if (!isset($_SESSION['user_id'])) { header('Location: index.php'); exit; } if (!empty($_POST['submitted'])) { $rules = array(); $rules['name'] = 'required|length[100]'; $rules['description'] = 'length[500]'; $formValidation = new \validation_library\FormValidation(); $formValidation->set_rules($rules); if ($formValidation->validate()) { $query = \db\DAO::getInstance()->prepare("INSERT INTO Galleries(title, user_id,\n description) VALUES (?,?,?)"); $query->execute([htmlentities($_POST['name']), $_SESSION['user_id'], htmlentities($_POST['description'])]); header('Location: upload.php'); exit; } else { $formValidation->display_validation_errors(); } } //page rendering $page = new html_library\HTMLHtmlElement(); $page->add_child(new html_library\HTMLHeadElement()); $body = new html_library\HTMLBodyElement(); $page->add_child($body); $form = new \html_library\HTMLFormElement(); $body->add_child($form); $form->add_attribute(new \html_library\HTMLAttribute('id', 'new_gallery'));
$rules['img_tag'] = 'length[500]'; $formValidation->set_rules($rules); if ($formValidation->validate() && validatePicture($_FILES['file']['tmp_name'])) { \models\ImgTag::validateTags($_POST['img_tag']); $tags = \models\ImgTag::validateTags($_POST['img_tag']); if ($tags === false) { echo "Every tag must be <= 50 characters"; header("Refresh: 1"); exit; } //add image $query = \db\DAO::getInstance()->prepare("INSERT INTO Images(title, user_id,\n gallery_id, description) VALUES (?,?,?,?)"); $query->execute([trim(htmlentities($_POST['name'])), $_SESSION['user_id'], trim(htmlentities($_POST['galleryOption'])), trim(htmlentities($_POST['description']))]); $id = \db\DAO::getInstance()->lastInsertId(); //add tags $query = \db\DAO::getInstance()->prepare("INSERT INTO Tags(image_id, tag) VALUES ({$id},?)"); if (!empty($tags)) { foreach ($tags as $tag) { if (!empty($tag)) { $query->execute([$tag]); } } } if (\db\DAO::getConnection()->saveImage($id, $_FILES['file']['tmp_name'])) { header('Location: mypictures.php'); exit; } else { echo 'Nisam uspio spremiti na disk'; } } else { if (!empty($formValidation->validation_errors())) {
* Time: 19:08 */ require_once 'Autoloader.php'; session_start(); // id of photo not set if (!isset($_GET['id'])) { header('Location: index.php'); } if (!empty($_POST['submitted'])) { $rules = array(); $rules['comment_data'] = 'required|length[500]'; $validation = new \validation_library\FormValidation(); $validation->set_rules($rules); $allGood = $validation->validate(); if ($allGood) { $query = \db\DAO::getInstance()->prepare("INSERT INTO Comments(image_id, user_id,\n username, comment_data) VALUES (?,?,?,?)"); $user = new \models\Korisnik(); $user->load($_SESSION['user_id']); if ($query->execute([$_GET['id'], $_SESSION['user_id'], $user->__get('username'), htmlentities($_POST['comment_data'])])) { $page = 'aboutPicture.php?id=' . $_GET['id']; header('Location: ' . $page); exit; } else { echo "Username must be unique"; } // exit; } else { echo "Comment cannot be empty."; } } \db\DAO::getConnection()->addVisit($_GET['id']);
if (!empty($_POST['submitted'])) { $rules = array(); $rules['name'] = 'length[40]'; $rules['surname'] = 'length[40]'; $rules['username'] = '******'; $rules['email'] = 'required|email|length[50]'; $rules['password'] = '******'; $rules['confirm_password'] = '******'; $validation = new \validation_library\FormValidation(); $validation->set_rules($rules); $allGood = $validation->validate(); if (strcmp($_POST['password'], $_POST['confirm_password']) != 0) { $allGood = false; } if ($allGood) { $query = \db\DAO::getInstance()->prepare("INSERT INTO Users(username, name,\n surname, email, password) VALUES (?,?,?,?,?)"); if ($query->execute([htmlentities($_POST['username']), htmlentities($_POST['name']), htmlentities($_POST['surname']), htmlentities($_POST['email']), sha1($_POST['password'])])) { header('Location: login.php'); echo "Sve ok"; } else { echo "Username must be unique"; } // exit; } else { if (empty($validation->validation_errors())) { echo "Password doesn't match"; } else { $validation->display_validation_errors(); } } }