<MyRusakov.ru />

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

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

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

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

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

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

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

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

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

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

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

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

Помогите занести страницы в базу
03.09.2012 17:41:34 Помогите занести страницы в базу Сообщение #1
malina95

malina95

Мастер

Мастер

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

Сообщений: 208

Ругается на:

($i = $p){continue;}} и закрытие ?>

Выводит ошибку:

Parse error: syntax error, unexpected '{' in Z:\home\cisite.ru\www\post.php on line 67

Чё там за синтаксическая ошибка?
Профиль Ответить
03.09.2012 18:28:22 Помогите занести страницы в базу Сообщение #2
malina95

malina95

Мастер

Мастер

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

Сообщений: 208

Вот моя база и таблица


--
-- Хост: localhost
-- Время создания: Сен 03 2012 г., 17:25
-- Версия сервера: 5.0.45
-- Версия PHP: 5.2.4
--
-- БД: `test`
--

-- --------------------------------------------------------

--
-- Структура таблицы `articles`
--

CREATE TABLE `articles` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL,
`page_title` varchar(255) NOT NULL,
`meta_kw` varchar(255) NOT NULL,
`meta_d` varchar(255) NOT NULL,
`content` mediumtext NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

--
-- Дамп данных таблицы `articles`
--

INSERT INTO `articles` VALUES (1, 'Главная страница', 'Главная страница - Сайт, например.', 'Главная страница', 'Главная страница', '<p>Некий вступительный текст на главной странице нашего сайта</p>');
INSERT INTO `articles` VALUES (2, 'О нас', 'О нас - Сайт, например.', 'О нас', 'О нас', '<p>Вот такие мы вот хорошие...</p>');
INSERT INTO `articles` VALUES (3, 'Моя статья', 'Моя статья - Сайт, например.', 'Моя статья', 'Моя статья', '<p>Текст статьи</p>');
INSERT INTO `articles` VALUES (4, 'Фотогалерея', 'Фотогалерея - Сайт, например.', 'Фотогалерея', 'Фотогалерея', '<p>Какие-то фоты</p>');
INSERT INTO `articles` VALUES (5, 'Наши контакты', 'Наши контакты - Сайт, например.', 'Наши контакты', 'Наши контакты', '<p>Телефон: +7 987 654-32-10</p>');


И переделанный код


<?php
//включаем файл с переменными
include ('names.inc');

//подключаемся к базе
$base = @mysql_connect($host, $name, $pass) or die('Невозможно подключиться к базе');

//выбираем базу
mysql_select_db($db_name, $base);

//задаем кодировку
mysql_query("SET NAMES '".$cod."'", $base);

//выводим сами статьи
if((isset($_GET['st'])) and (!empty($_GET['st']))){
$id = (int)($_GET['st']);

//вытаскиваем нужную статью
$tit = mysql_query("SELECT * FROM `articles` WHERE `id`='$id'", $base);
$t = mysql_fetch_assoc($tit);
mysql_free_result($tit);//это скорее привычка чем необходимость

//тупо выводим статью
echo '<center><h2>', $t['title'], '</h2><br/><hr/>
<br/><br/>', $t['content'];
}
else{
//делаем страничную навигацию
//считаем записи
$num = mysql_query("SELECT count(*) FROM `articles`", $base);
$n = mysql_fetch_assoc($num);
$n = $n['count(*)'];
mysql_free_result($num);//освобождаем память

//задаем количество страниц
$p = ceil($n/15);//по 15 заголовков на странице

//определяем сколько нужно вытаскивать записей
if(isset($_GET['page'])){
$page = (int)($_GET['page']);
$l1 = ($page-1)*15;
$l2 = $l1+15;}
else{$l1=0; $l2 = 15;}

//вытаскиваем с базы заголовки
$head = mysql_query("SELECT `id`,`title` FROM `articles` ORDER BY id LIMIT $l1, $l2", $base);

//начинаем выводить заголовки статей
echo '<div align="center" class="post">
<table width="100%" height="100%">';

//в цикле выводим заголовки
while($h = mysql_fetch_assoc($head)){
echo '
<tr><td><a href="http://', $site, '/post.php?st=', $h['id'], '">', $h['title'], '</a></td></tr>';}

//заканчиваем вывод
mysql_free_result($head);
echo '</table><br/>';

//выводим навигацию по страницам
if($p >1){
if((isset($_GET['page'])) && ($_GET['page']>1)){
echo '<a href="http://',$site,'/post.php?page=',$_GET['page']-1,'">Предыдущая</a>';}
for($i=1; $i<=$p; $i++){
echo '<a href="http://', $site, '/post.php?page=', $i, '"> ', $i, ' </a>';
if($i = $p){continue;}}
if((isset($_GET['page'])) && ($_GET['page']<$p)){
echo '<a href="http://',$site,'/post.php?page=',$_GET['page']+1,'">Следующая</a>';}
echo '</div>';}
?>


и выдаёт ошибку

Parse error: syntax error, unexpected $end in Z:\home\cisite.ru\www\post.php on line 71
Профиль Ответить
03.09.2012 19:06:18 Помогите занести страницы в базу Сообщение #3
ac-40-6.0

ac-40-6.0

Эксперт

Эксперт

Дата регистрации:
29.06.2012 02:02:06

Сообщений: 88

Насколько вижу с телефона, в третей строке снизу кавычки не хватает. Там где конец ссылки "следующей" страницы. 68 строка
Профиль Ответить
03.09.2012 19:26:27 Помогите занести страницы в базу Сообщение #4
malina95

malina95

Мастер

Мастер

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

Сообщений: 208

Обе ссылки идентичны,

пересмотри пожалуйста

тем более что если бы это было в ссылках я бы сам заметил
Профиль Ответить
03.09.2012 21:02:19 Помогите занести страницы в базу Сообщение #5
ac-40-6.0

ac-40-6.0

Эксперт

Эксперт

Дата регистрации:
29.06.2012 02:02:06

Сообщений: 88

Проблема не в ссылках, проблема в условиях.
...>Следующая</a>';}}
2 фигурных скобки
и в условии
($i === $p)
2, можно 3 знака равенства.

Плагиатор ты!
Профиль Ответить
03.09.2012 23:27:28 Помогите занести страницы в базу Сообщение #6
malina95

malina95

Мастер

Мастер

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

Сообщений: 208

Во первых ругается на закрытие php : ?>

Во вторых кто такой плагиатор?
Профиль Ответить
04.09.2012 07:51:43 Помогите занести страницы в базу Сообщение #7
ac-40-6.0

ac-40-6.0

Эксперт

Эксперт

Дата регистрации:
29.06.2012 02:02:06

Сообщений: 88

<?php
include('script/names.inc');

//подключаемся к базе
$base = @mysql_connect($host, $name, $pass) or die('Невозможно подключиться к базе');

//выбираем базу
mysql_select_db($db_name, $base);

//задаем кодировку
mysql_query("SET NAMES '".$cod."'", $base);

//выводим сами статьи
if((isset($_GET['st'])) and (!empty($_GET['st']))){
$id = (int)($_GET['st']);

//вытаскиваем нужную статью
$tit = mysql_query("SELECT * FROM `articles` WHERE `id`='$id'", $base);
$t = mysql_fetch_assoc($tit);
mysql_free_result($tit);//это скорее привычка чем необходимость

//тупо выводим статью
echo '<center><h2>', $t['title'], '</h2><br/><hr/>
<br/><br/>', $t['content'];
}
else{
//делаем страничную навигацию
//считаем записи
$num = mysql_query("SELECT count(*) FROM `articles`", $base);
$n = mysql_fetch_assoc($num);
$n = $n['count(*)'];
mysql_free_result($num);//освобождаем память

//задаем количество страниц
$p = ceil($n/15);//по 15 заголовков на странице

//определяем сколько нужно вытаскивать записей
if(isset($_GET['page'])){
$page = (int)($_GET['page']);
$l1 = ($page-1)*15;
$l2 = $l1+15;}
else{$l1=0; $l2 = 15;}

//вытаскиваем с базы заголовки
$head = mysql_query("SELECT `id`,`title` FROM `articles` ORDER BY id LIMIT $l1, $l2", $base);

//начинаем выводить заголовки статей
echo '<div align="center" class="post">
<table width="100%" height="100%">';

//в цикле выводим заголовки
while($h = mysql_fetch_assoc($head)){
echo '
<tr><td><a href="http://', $site, '/post.php?st=', $h['id'], '">', $h['title'], '</a></td></tr>';}

//заканчиваем вывод
mysql_free_result($head);
echo '</table><br/>';

//выводим навигацию по страницам
if($p >1){
if((isset($_GET['page'])) && ($_GET['page']>1)){
echo '<a href="http://',$site,'/post.php?page=',$_GET['page']-1,'">Предыдущая</a>';}
for($i=1; $i<=$p; $i++){
echo '<a href="http://', $site, '/post.php?page=', $i, '"> ', $i, ' </a>';
if($i === $p){continue;}}//а тут должно быть 2 или 3 =
if((isset($_GET['page'])) && ($_GET['page']<$p)){
echo '<a href="http://',$site,'/post.php?page=',$_GET['page']+1,'">Следующая</a>';}}//вот здесь не хватало }
echo '</div>';
}
?>


Плагиатор - тот кто занимается копипастлом.
Профиль Ответить
04.09.2012 08:02:19 Помогите занести страницы в базу Сообщение #8
ac-40-6.0

ac-40-6.0

Эксперт

Эксперт

Дата регистрации:
29.06.2012 02:02:06

Сообщений: 88

Кстати прикольно получилось.
Советую поэксперементировать с тегами внутри цикла вывода заголовков.
Профиль Ответить
04.09.2012 08:14:34 Помогите занести страницы в базу Сообщение #9
ac-40-6.0

ac-40-6.0

Эксперт

Эксперт

Дата регистрации:
29.06.2012 02:02:06

Сообщений: 88

Немного накосячил с заголовками.

Исправь куски кода на вот эти.
//определяем сколько нужно вытаскивать записей
if((isset($_GET['page'])) && ($_GET['page'] > 1)){
$page = (int)($_GET['page']);
$l1 = ($page-1)*15;
$l2 = $l1+15;}
else{$_GET['page']=1; $l1=0; $l2 = 15;}


И вывод навигации. Негоже делать текущую страницу ссылкой на эту же страницу.
//выводим навигацию по страницам
if($p >1){
if((isset($_GET['page'])) && ($_GET['page']>1)){
echo '<a href="http://',$site,'/post.php?page=',$_GET['page']-1,'">Предыдущая</a>';}
for($i=1; $i<=$p; $i++){
if($i == $_GET['page']){echo '<font size="+1">', $i, '</font>'; continue;}
echo '<a href="http://', $site, '/post.php?page=', $i, '"> ', $i, ' </a>';}
if((isset($_GET['page'])) && ($_GET['page']<$p)){
echo '<a href="http://',$site,'/post.php?page=',$_GET['page']+1,'">Следующая</a>';}}
Профиль Ответить
04.09.2012 18:40:05 Помогите занести страницы в базу Сообщение #10
malina95

malina95

Мастер

Мастер

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

Сообщений: 208

Большое спасибо тебе...

Работает идеально...

Если не сложно расскажи как сделать чтобы:
Если у меня в таблице есть категории, то как выводить страницы которые относятся к той или другой категории?
Профиль Ответить