<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

В начале курса у нас будет только идея, а в конце готовый продукт, который можно использовать в практических целях.

В рамках упражнений курса Вы параллельно со мной будете создавать свою большую программу на Java, что даст Вам необходимую практику, после которой для Вас уже не будет разницы, какого размера создавать программы.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Урок - создание движка
30.04.2013 19:19:29 Урок - создание движка Сообщение #1
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

гу а конкретно к вашей проблеме - наверно не правильная замена в тпл файлах.
Профиль Ответить
30.04.2013 19:24:01 Урок - создание движка Сообщение #2
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

Вроде тоже делал по курсу, делал точную копию, причём пытаюсь уже 4 раз и не выходит до сих пор. Всё время застряваю на главной странице, я не знаю что делать если честно.
Профиль Ответить
30.04.2013 22:21:33 Урок - создание движка Сообщение #3
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

Print_r и echo тебе в помощь и логика
Профиль Ответить
03.05.2013 23:13:19 Урок - создание движка Сообщение #4
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

Привет ещё раз, я всё реализовал, домашки только начинаю делать, и решил начать с защиты пагинации, подскажите пожалуйста что должно входить в метод проверки, какие данные? Я сижу уже 5 час, и кроме не рабочего метода ничего придумать не смог, ткните пожалуйста носом где ошибка, и скажите какие данные должны входить в метод?
protected function getPagination ($count, $count_on_page, $link) {
$count_pages = ceil($count / $count_on_page);
$sr['number'] = 1;
$sr['link'] = $link;
$pages .= $this->getReplaceTemplate($sr, 'number_page');
$sym = (strpos($link, '?') !== false) ? '&amp;' : '?';
for ($i = 2; $i <= $count_pages; $i++) {
$sr['number'] = $i;
$sr['link'] = $link.$sym.'page='.$i;
if (!$this->validPaginationNumber($count_pages, $i)) $this->notFound();
$pages .= $this->getReplaceTemplate($sr, 'number_page');
}
$els['number_pages'] = $pages;
return $this->getReplaceTemplate($els, 'pagination');
}

protected function validPaginationNumber ($number, $i = '') {
if (!$this->valid->isIntNumber($number)) return false;
if (!$this->valid->isNoNegativeInteger($number)) return false;
if ($i != '') {
if (!in_array($number, $i)) return false;
}
return true;
}

Я вас очень прошу, помогите
Профиль Ответить
19.08.2013 19:16:29 Урок - создание движка Сообщение #5
DrZimmer

DrZimmer

Новичок

Новичок

Дата регистрации:
19.08.2013 19:07:51

Сообщений: 2

Добрый день! прохожу курс по созданию движка. собрал главную страницу, а вот на странице со статьями возникла ошибка.
При вызове метода getAllOnSectionID($this->data["id"]); в конструкторе выдаёт ошибку
Fatal error: Call to a member function fetch_assoc() on a non-object in \www\lib\database_class.php on line 42

Это функция select. помогите найти ошибку(

private function select($table_name, $fields, $where = "", $order = "", $up = true, $limit = ""{
for ($i = 0; $i < count($fields); $i++) {
if ((strpos($fields[$i], "(" === false) && ($fields[$i] != "*") $fields[$i] = "`".$fields[$i]."`";
}
$fields = implode(",", $fields);
$table_name = $this->config->db_prefix.$table_name;
if (!$order) $order = "ORDER BY `id`";
else {
if ($order != "RAND()" {
$order = "ORDER BY `$order`";
if (!$up) $order .= " DESC";
}
else $order = "ORDER BY $order";
}
if ($limit) $limit = "LIMIT $limit";
if ($where) $query = "SELECT $fields FROM $table_name WHERE $where $order $limit";
else $query = "SELECT $fields FROM $table_name $order $limit";
$result_set = $this->query($query);
if(!result_set) return false;
$i = 0;
while ($row = $result_set->fetch_assoc()){
$data[$i] = $row;
$i++;
}
$result_set->close();
return $data;
}
Профиль Ответить
19.08.2013 20:48:32 Урок - создание движка Сообщение #6
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

У вас не сработал запрос query и он ничего не выбарл наверно из таблицы. Проверьте через printf что находится в переменной результ
Профиль Ответить
19.08.2013 20:50:07 Урок - создание движка Сообщение #7
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

Даю свой рабочий вариант

public function select($table_name, $fields, $where = "", $order = "", $up = true, $limit = "" {
$table_name = $this->config->db_prefix.$table_name; // сформировал имя таблицы с цчутом префикса
for ($i=0; $i<count($fields); $i++)//перебираю масси fileds и если нету в запросе ( и *, то переприсваиваю с апострофами обратными, усли есть то сразу перехожу в соединение массива в строку
{
if((strpos($fields[$i], "(" === false) && ($fields[$i] != "*")
$fields[$i] = "`".$fields[$i]."`";
}
$fields = implode(",",$fields); // создание строки из массива с разделителем ","
//формируем сортировку
if(!$order) // если не задали сортировку, то по умолчанию она производится по id
$order = "ORDER BY `id`";
else {
if($order != "RAND()"{ // иначе , если не задан рандом, сортируем по полу order
$order = "ORDER BY `$order`";
if(!$up)
$order .=" DESC";
}
else
$order = "ORDER BY $order"; // если задан рандом, то сортируем случайно
}
//формируем лимит
if($limit)//если он задан то формируем
$limit = "LIMIT $limit";

//формируем запрос
if($where){//если есть where
$query = "SELECT $fields FROM `$table_name` WHERE $where $order $limit";
}
else{//иначе
$query = "SELECT $fields FROM `$table_name` $order $limit";
}
$result_set= $this->query($query);

if(!$result_set)
return false;
$i=0;
while($row = $result_set->fetch_assoc())
{
$data[$i]=$row;
$i++;
}
$result_set->close();
return $data;
}
Профиль Ответить
19.08.2013 20:54:17 Урок - создание движка Сообщение #8
DrZimmer

DrZimmer

Новичок

Новичок

Дата регистрации:
19.08.2013 19:07:51

Сообщений: 2

Спасибочки))))))))))))))))))))))))))))))))
Профиль Ответить
20.08.2013 08:24:54 Урок - создание движка Сообщение #9
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

Разберитесь в своей ошибке, иначе потом повторите ее опять
Профиль Ответить
05.09.2013 10:58:03 Урок - создание движка Сообщение #10
Isuhi

Isuhi

Новичок

Новичок

Дата регистрации:
05.09.2013 10:38:01

Сообщений: 2

Урок по созданию страницы с разделом : не выводятся в браузере данные по разделу:"title" ,"meta_desc", "meta_key", "description". Статьи, находящиеся в разделе, выводятся. Главная страница и страница со статьей также выводятся так, как надо. Как будто section_info вообще нет. print_r ($this->section_info); не выводит ничего.
Повторяю точно по курсу уже 4 раз.
И еще.
Урок по регистрации пользователя: вроде бы все правильно - данные в базу попадают, сообщения выводятся. Но, если вводить только каптчу при пустых полях с логином и паролем происходит перенаправление на файл functions.php, а не на исходную страницу. При этом, нажав в браузере кнопку назад - попадаешь именно на эту исходную страницу. Как будто редирект заклинило. код проверил 100 раз.
Авторизация зарегистрированного пользователя на происходит - выводит сообщение о неправильном логине или пароле.
Прошу помощи. У кого все получилось - покажите исходники этих файлов - может так найду ошибки.
Мой код sectioncontent_class.php:
<?php
require_once "modules_class.php";

class SectionContent extends Modules{

private $articles;
private $section_info;
private $page;

public function __construct($db){
parent::__construct($db);
$this->articles = $this->article->getAllOnSectionID($this->data["id"]);
$this->section_info = $this->section->get($this->data["id"]);
$this->page = (isset($this->data["page"]))? $this->data["page"]: 1;
print_r ($this->section_info);
}

protected function getTitle(){
if ($this->page > 1) return $this->section_info["title"]." - страница ".$this->page;
else return $this->section_info["title"];
}
protected function getDescription(){
return $this->section_info["meta_desc"];
}
protected function getKeyWords(){
return $this->section_info["meta_key"];
}

protected function getTop(){
$sr["title"] = $this->section_info["title"];
$sr["description"] = $this->section_info["description"];
return $this->getReplaceTemplate($sr, "section";
}

protected function getMiddle(){
return $this->getBlogArticles($this->articles, $this->page);
}

protected function getBottom(){
return $this->getPagination(count($this->articles), $this->config->count_blog, $this->config->address."?view=section&amp;id=".$this->data["id"]);
}
}
?>
Профиль Ответить