![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Лиходей |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Здравствуйте уважаемые!
Такой вопрос. Нужно программно загрузить страничку, но не сначала, а с нужного места. Например после статьи человек оставил комментарий и после нажатия на кнопку "Добавить", комментарий добавляется в конец странички (после других комментариев), страничка обновляется и чтобы его увидеть нужно прокрутить страницу вниз. Хотелось бы так - добавил комментарий - сразу увидел результат. Как поставить якорь, и перейти на него по ссылке, я и сам знаю. Но по ссылке нужно щелкать мышью. Схема документа такая: ------------------ статья проверка была ли нажата кнопка и заполнены поля если да дабавление данных в базу считывание из базы комментариев и отображение их форма "добавить комментарий" // желаемое место перехода при // новом коменте ------------------- все на одной странице. Спасибо всем кто откликнется. Gorychev на форуме Добавить отзыв для Gorychev Пожаловаться на это сообщение Редактировать/Удалить сообщение |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Веерная рассылка вопросов по форумам, хе-хе?
http://php.net/header в Location подставляешь свой урл с якорем. |
|||
|
||||
| Лиходей |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Да так то оно так .....
Вообщем разобрался. В самом верху index.php еще до
написал проверку если кнопка "Добавить" нажата и поля заполнены, то - переход
Спасибо добрым людям и тебе Feldmarschall (GC0mmander если не ошибаюсь). Благодарю... |
||||
|
|||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Странно. а раньше у тебя этой проверки не было? То есть, скрипт вообще ничего не делал после нажатия н а кнопку? Удивительно...
Только урл должен быть полный. он вообще всегда дожен быть полный, но в случае с якорем я сталкивался с тем, что он не срабатывал Это сообщение отредактировал(а) Feldmarschall - 25.5.2008, 14:38 |
|||
|
||||
| Лиходей |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Такую проверку в данном случае приходится проводить дважды:
1. При занесении данных в базу 2. Вверху страницы чтоб узнать была ли нажата кнопка, если да - переход на последний комент, нет - статья с начала. |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
ммм... не понял. А это не одно и то же?
Ты же сам пишешь, что это тебе нужно при добавлении. то есть, проверки достаточно одной. А раньше у тебя после добавления данных в базу локейшена не было? И тебя ни разу не беспокоила надпись "Невозможно отобразить страницу"? Почему бы тебе не сделать проверку только в одном месте - в начале страницы? |
|||
|
||||
| Лиходей |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Попробую... "Невозможно отобразить страницу" - таково небыло.
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
ты методом POST добавляешь данные? и ни разу не нажимал после добавления F5? или не возвращался на эту страницу с других?
вообще-то, это хрестоматийный случай, сним сталкиваются все. и решение тоже хрестоматийное: - если форма изменяет данные на сервере, то она делается методом POST - если форма была методом POST, то после её обработки делается перенаправление методом GET |
|||
|
||||
| Лиходей |
|
||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Опишу подробней, еще одна проблема возникла:
есть 2 статьи(файлы filter.php b bde.php) для каждой нужно проделывать одинаковые действия (вывести, комментировать..) Глобальная переменная $f_load - идентифицирует статью которая текущая, для подключения нужной таблицы БД. index.php ---------------
Data.php //меню ----------------
add.php --------------
Работает если в index.php (5я строка) явно указать параметр action, если глобальной переменной например так
ошибку не выдает, но переход работает всегда только для первой страницы (статья filter.php выводится по умолчанию), если коментирую эту статью все отлично с переходом (header("location: index.php?action=$f_load#add_com")), если вторую переход происходит тоже на первую статью. Насколько я понял $f_load = "". Какимто образом нужно знать в начале сценария какую статью коментировали. С базами проблем нет. |
||||||||
|
|||||||||
| Fortop |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: 20 Всего: 42 |
Лиходей,
Передавай нужный параметр в урл
-------------------- Мир это Я. Живее всех живых. |
||||
|
|||||
| Лиходей |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Недопонял ..
У меня $f_load может иметь три значения $f_load = ""; // значит не статья $f_load = "filter" и $f_load = "bde" А если в файл имя статейки? |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
и какая разница?
|
|||
|
||||
| Лиходей |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Такое ощущение что $f_load нет в фрагменте
А с файла я смогу считать и здесь |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
а почему ты пишешь $_POST['sub'], $_POST['name'], а не $sub, $name?
Добавлено через 24 секунды вообще, в хорошей программе не должно быть повторяющихся кусков кода. |
|||
|
||||
| Лиходей |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 25.5.2008 Репутация: нет Всего: нет |
Исправил хотя великой разницы не вижу... Вычитал в коком то справочнике как нужно проверять была ли отправлена форма....
А насчет кода, потом отшлифую, главное добиться стабильной работы. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |