The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"В принципе толково"
Отправлено Dr.Nebula, 10-Мрт-06 19:00 
Походу я не свосем корректно объяснил задачу:

есть старница на неком сайте, с формой логина и пароля для входа в почту. Есть почтовый вэб интерфейс, в в логин скрипт которого и попадают на данный момент данные переданные из формы.
Для того что бы можно было поддерживать мультидоменность, но оставить пользователю возможность логиниться с "коротким" логином (без @domain.net) в принимающем скрипте были сделаны некоторые модификации (типа $login = $login . '@' . $domain) Это не есть хорошо, поскольку версии вэб морды переодически обновляются и приходится не забывать после обновления снова модифицировать скрипты.

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

Единственный вариатн пришедший мне в голову: это промежуточная страница в том же домене, что и страница авторизации, принимающая данные из формы, анализирующая их, сажающая куки, а так же превращающая две переменные $login и $ domain в одну, как раз того вида, который по умолчанию нужен принимающему скрипту на почтовой морде.

Следовательно: 1. надо принять на этой странице данные через POST (не проблема). 2. Что то с ними сделать (тоже не проблема) 3. Отправить пользователя в почтовый интерфейс, передав опять таки методом POST уже обработанные данные.

Опять таки - единственные вариатн который работоспособен в таком виде:

<?
$login = $_POST[login];
$domain = $_POST[domain];
$pass = $_POST[password]
$login = $login.'@'.$domain;

// Посадить куку.
//Запретить кеширование.

echo "<FORM id='auth' action='http://mail.domain.net/login.php' method=post>
<INPUT type=hidden name=login value='$login'>
<INPUT type=hidden name=pass value='$pass'>
<script>auth.submit();</script>
</FORM>";
?>

В примерно таком варианте все работет, но смущает уже описанная потенциальная возможность сохранения этой промежуточной страницы на компьютере пользователя... Смущает именно из-за <INPUT type=hidden name=pass value='$pass'>

Вот такая вот ситуевина

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.

На сайте действует частичное премодерирование - после публикации некоторые сообщения от анонимов могут автоматически скрываться ботом. После проверки модератором ошибочно скрытые сообщения раскрываются. Для ускорения раскрытия можно воспользоваться ссылкой "Сообщить модератору", указав в качестве причины обращения "скрыто по ошибке".



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру