Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2013, 04:21   #1
LynXzp
Пользователь
 
Аватар для LynXzp
 
Регистрация: 04.10.2012
Сообщений: 95
По умолчанию архитектура, отказаться от редиректа

Коротко: Можно сделать чтобы echo только в файл сохранял, без вывода?

Полностью:
Сайт почти готов, разработанная архитектура проста.
1. site/form.html страничка с формой, с нее делается post на:
2. site/math.php скрипт обрабатывающий введенные данные, выводящее рез-т на экран, параллельно сохраняя в html файл на сервере (без заголовка, точнее css части одинаковой для всех файлов)
3. site/get.php скрипт выдающий старые готовые рез-ты. (два инклуда: заголовок и из GET по имени)

Все было отлично пока я не узнал что нельзя просто так взять и заменить адресную строку у пользователя на произвольное значение. Предполагалось что после перехода на site/math.php в конце вычислений адресная строка заменится на site/get.php?q=blablabla.

Оказалось нельзя. Получается нужно обработать введенные данные, сохранить и средиректить туда пользователя? Но с:
Код:
ob_start();
...
$output = ob_get_contents();
Все выводится пользователю параллельно, редиректить после вывода с повторной загрузкой идентичной страницы глупость. Что теперь все echo на fwrite переписывать? Чтобы после обработки и сохранения средиректить пользователя с чистого листа?

P.S. А можно получить такой $_GET чтобы обработать не site/g?q=bla-bla, а site/g?bla-bla (у меня ругается, ничего тоже не нашел)

P.P.S. (с сайтами новичок, больше компилируемые языки использую, но php довольно прост, css ужс)
Пишу на чистом С, плюсы спилил.
LynXzp вне форума Ответить с цитированием
Старый 24.01.2013, 07:19   #2
Mortimoro
Форумчанин
 
Регистрация: 03.12.2010
Сообщений: 334
По умолчанию

я не совсем понял цель всех извращений, но у меня есть подозрение, что ты делаешь элементарные вещи сложным и запутанным способом. А так как я не понял, что именно нужно, просто подброшу варианты для гугления, может сгодятся:
1.чтоб не загружать повторно идентичную страницу, используем javascript - например, переносим содержимое input в div.
2.редиректы в большинстве случаев логичнее делать через htaccess.
3.в переменной $_SERVER['QUERY_STRING'] хранится часть адреса после знака вопроса. Так, например, если адрес "http://site/g?bla-bla", то переменная будет содержать "bla-bla" и обрабатывай ее как душе угодно.
Mortimoro вне форума Ответить с цитированием
Старый 24.01.2013, 08:19   #3
rdama
Форумчанин
 
Аватар для rdama
 
Регистрация: 25.07.2009
Сообщений: 533
По умолчанию

А еще хранение предыдущих результатов можно сделать в БД. А не генерить кучу хтмл.
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA)
rdama вне форума Ответить с цитированием
Старый 24.01.2013, 22:39   #4
LynXzp
Пользователь
 
Аватар для LynXzp
 
Регистрация: 04.10.2012
Сообщений: 95
По умолчанию

Целый день был в карьере, только пришел.
Цитата:
3.в переменной $_SERVER['QUERY_STRING']
Точно поможет, спс.
пп 1 и 2 я еще недопонял, позже погуглю, может пойму.

2 rdama про sql думал, не спорю, но кажется, при правильной организации структуры директорий это не даст никакой выгоды. [а минуса для меня более отчетливы: мне нужно выучить/нагуглить необходимый минимум знаний, а с файлами (в консоли) хорошо справлюсь, и с прошлого проекта остался свой http сервер который не знает что такое не html/файл]
Пишу на чистом С, плюсы спилил.
LynXzp вне форума Ответить с цитированием
Старый 27.01.2013, 05:48   #5
LynXzp
Пользователь
 
Аватар для LynXzp
 
Регистрация: 04.10.2012
Сообщений: 95
По умолчанию

Цитата:
Сообщение от Mortimoro Посмотреть сообщение
3.в переменной $_SERVER['QUERY_STRING'] хранится часть адреса после знака вопроса. Так, например, если адрес "http://site/g?bla-bla", то переменная будет содержать "bla-bla" и обрабатывай ее как душе угодно.
через $_SERVER['REQUEST_URI'];
и ErrorDocument 404 /g.php (в .htaccess) сделал еще лучше:
http://site.com/bla-bla
(перекрываться с действительными ссылками не могут в силу структуры сайта, а в случае если док-та нет пишем 404, так что оптимизация идеальная)
Пишу на чистом С, плюсы спилил.
LynXzp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как отказаться от const? L6go1as Общие вопросы C/C++ 15 31.12.2011 21:54
Ошибка редиректа ZvEr_HaCkEr PHP 3 24.06.2011 21:03
Проблема с авторизацией из-за редиректа ToDayGoodDay Общие вопросы Delphi 1 14.06.2011 11:13
Скрипт редиректа czart JavaScript, Ajax 2 10.07.2010 05:16
БД в Delphi - как отказаться от BDE? JoanM БД в Delphi 21 09.01.2008 03:40