Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как попасть по ссылке из почтового ящика на нужную страницу постраничной навигации
 
 автор: nautilus2812   (20.08.2009 в 17:35)   письмо автору
 
 

Здравствуйте.Помогите решить задачу такого типа:
Предположим пользователь написал какую то заметку и она разместилась в базе данных с датой создания заметки.На почтовый ящик ,который он указал при создании заметки,ему пришла ссылка на его заметку, допустим с параметром id (номер его заметки в базе данных).Анонсы заметок выводятся на странице допустим по 5 штук с применением постраничной навигации и сортировке по дате,соответсвенно анонс заметки которую написал пользователь будет всё время сдвигаться на другую страницу.(например сначала анонс был на 1странице,потом уже на 5).Как сделать так чтобы пользователь по ссылке которая ему пришла на ящик всегда попадал на ту страницу где в данный момент находится анонс его заметки и чтобы анонс выделялся каким нибудь цветом для наглядности.Спасибо.

  Ответить  
 
 автор: Yuriev   (21.08.2009 в 02:33)   письмо автору
 
   для: nautilus2812   (20.08.2009 в 17:35)
 

На php это хлопотно, а вот запросами к базе (если новости хранятся в базе) решается проще

  Ответить  
 
 автор: nautilus2812   (21.08.2009 в 17:38)   письмо автору
 
   для: Yuriev   (21.08.2009 в 02:33)
 

так я же указал что хранится в базе..помогите реализовать ..плиз

  Ответить  
 
 автор: virtus1k   (21.08.2009 в 17:50)   письмо автору
 
   для: nautilus2812   (21.08.2009 в 17:38)
 

Цветом то легко выделить, а вот со страницами - нет! Не сделаете такого, забудьте. Ибо через ссылка может устареть за 2 минуты с номером страницы.
Или же делать сортировку по дате наоборот. Что б новее шли после старых - тогда ничего сложного

  Ответить  
 
 автор: Dimka31   (21.08.2009 в 18:30)   письмо автору
 
   для: nautilus2812   (21.08.2009 в 17:38)
 

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

  Ответить  
 
 автор: nautilus2812   (21.08.2009 в 18:58)   письмо автору
 
   для: Dimka31   (21.08.2009 в 18:30)
 

так это я понимаю что мне нужно делать ссылку на скрипт..а вот как сделать сам скрипт..вот в чём проблема..пользователю отправляется ссылка не с номером страницы а с id..т.е.номер его заметки в базе и он не может устареть так как он всегда уникальный для каждой заметки..я понимаю так что пользователь нажимая на ссылку отправляет id обработчику..где обработчик проверяет если такой id в базе данных и если есть то вычисляет на какой странице он находится и выводит ...почему же не реализовать? теоритически то я понимаю а вот практически не получается..

  Ответить  
 
 автор: neadekvat   (21.08.2009 в 19:44)   письмо автору
 
   для: nautilus2812   (21.08.2009 в 18:58)
 

Нажал человек кнопку "добавить"
Скрипт сначала добавляет в бд саму новость, затем вы делаете еще запрос в бд - mysql_insert_id() вам как раз вернется номер последней добавленной записи (если, конечно, у id есть AUTO_INCREMENT), ну и подставляйте уже в сообщение полученное значение.

  Ответить  
 
 автор: nautilus2812   (21.08.2009 в 20:02)   письмо автору
 
   для: neadekvat   (21.08.2009 в 19:44)
 

так суть то не в том как отправить пользователю сообщение ...а как пользователю всегда попадать по этому сообщению ,который будет у негов почтовом ящике на анонс своей заметки учитывая постраничную навигацию...или я вас не так понимаю...сообщение то с id его заметки я ему отправлю..это без проблем..а как ему потом попадать именно на страницу где будут другие анонсы и в том числе его анонс с учётом постраничной навигации..

  Ответить  
 
 автор: virtus1k   (21.08.2009 в 20:10)   письмо автору
 
   для: nautilus2812   (21.08.2009 в 20:02)
 

Dimka31 уже написал решение Вашей задачи! Внимательнее нужно быть :) юзеру даете ссылку с его ID на скрипт - скрипт высчитывает на какой она странице и редеректится туда.

  Ответить  
 
 автор: nautilus2812   (21.08.2009 в 20:17)   письмо автору
 
   для: virtus1k   (21.08.2009 в 20:10)
 

о..боже так я и прошу помочь сделать скрипт который бы делал рассчёт..я очень даже внимателен

  Ответить  
 
 автор: Trianon   (21.08.2009 в 23:55)   письмо автору
 
   для: nautilus2812   (21.08.2009 в 20:17)
 

Если страница, это лишь способ ограничить поток одномоментно выдаваемой информации (а я надеюсь, у Вас так и есть) , то я бы посоветовал по ссылке выводить одну лишь указанную новость, а не набор из страницы. Так будет идеологически более корректно.

  Ответить  
 
 автор: nautilus2812   (22.08.2009 в 11:28)   письмо автору
 
   для: Trianon   (21.08.2009 в 23:55)
 

если бы мне нужно было выводить одну лишь новость так я бы и неспрашивал т.к.это реализовать не так уж сложно..и там не новости будут вообще..это я привёл просто для примера..для меня сейчас неважно что будет выводиться..вопрс стоял не в этом..важно как сделать рассчёт..но почему то все пытаются мне указать что и как я должен выводить а мне нужно конкретное решение задачи..рассчитать страницу для вывода..

  Ответить  
 
 автор: virtus1k   (22.08.2009 в 11:42)   письмо автору
 
   для: nautilus2812   (22.08.2009 в 11:28)
 

Не нервничай. Все просто делаешь запрос
 select count(*) from table твое условие 

получаешь количество (например 63) - это количество делишь на цифру разбивки (т.е. количество записей на одну страницу.. например 10) и выходит 63/10 - это будет 6 страница! и редирект на нее /stratica.php?page=6

  Ответить  
 
 автор: neadekvat   (22.08.2009 в 11:57)   письмо автору
 
   для: virtus1k   (22.08.2009 в 11:42)
 

Это будет 6 страниц.
А где у вас хоть какое-то упоминание про добавленную запись?

  Ответить  
 
 автор: virtus1k   (22.08.2009 в 12:05)   письмо автору
 
   для: neadekvat   (22.08.2009 в 11:57)
 

А зачем она?
ЖУЮ:
Пользователю приходит ссылка с ID его записи.... site.ua/?id=2000
По ссылке он пападает на скрипт, который узнает сколько записей до ID 2000 предположим их 63 т.е. эта запись идет по счету 63 (шестьдесят третья!!!!) Далее делим на количество записей, которое выводятся на страницу И ПОЛУЧАЕМ НОМЕР СТРАНИЦЫ - это номер 6!!!
Так понятно?
Вместо того, что б кричать - можно было вежливо попросить. А, что б написать ГОТОВОЕ РЕШЕНИЕ нужно хотя бы исходники выкладывать

  Ответить  
 
 автор: neadekvat   (23.08.2009 в 03:41)   письмо автору
 
   для: virtus1k   (22.08.2009 в 12:05)
 

Мне чисто для себя, поржать, где там крик?
"жувать" надо изначально, а не после поста с вопросами к вашему решению.

  Ответить  
 
 автор: virtus1k   (23.08.2009 в 11:08)   письмо автору
 
   для: neadekvat   (23.08.2009 в 03:41)
 

neadekvat Я не тебе, будь внимательнее ;)

  Ответить  
 
 автор: nautilus2812   (23.08.2009 в 12:54)   письмо автору
 
   для: virtus1k   (22.08.2009 в 12:05)
 

Дая вроде и не кричал..я абсолютно спокоен...спасибо за подсказку..я вчера вечером сел и всё написал..всё работает отлично..тему закрываю..

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования