2012-03-12 2 views
0

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

header('Location: registered page url');

Joomla побуждает меня войти в систему для того, чтобы просмотреть зарегистрированную страницу. Что я делаю не так? В исходном сообщении никогда не обсуждалось, как перенаправить пользователя. Кроме того, когда я не ставил перенаправление в код, браузер просто переходит на пустую белую страницу. Это нормально? Не следует ли перейти на главную страницу скрученного сайта?

отметить также, что я пытался добавить возвратного URL к коду:

$loginRedirectUrl = 'index.php?option=com_content&view=article&id=146&Itemid=178'; 
$loginRedirectUrl = base64_encode($loginRedirectUrl); 
$postfields['return'] = $loginRedirectUrl; 

Когда я сделал print_r ($ postfields) он возвращается все засыпано. Включая закодированный обратный URL и токен. Итак, я очень смущен тем, почему это похоже, что я вошел в систему, но браузер все еще каким-то образом не хранит файлы cookie или что-то в этом роде.

Куки-файлы не отключены.

Любая помощь была бы принята с благодарностью. Заранее спасибо.

ответ

0

Давайте посмотрим, можем ли мы покрыть этот шаг за раз. Бит кода в другом сообщении просто обрабатывает ведение журнала в материалах. Если вы запустите его неотредактированным, вы просто закончите с пустой страницей при ее запуске, так что это нормально.

Далее, если все, включая маркер, отображается в $postfields, то следующее, что я хотел бы проверить, - проверить, показывает ли администратор Joomla вошедший в систему сеанс. Если это так, то проблема заключается в том, что файл cookie переносится в браузер. Если это не так, это будет означать, что сеанс был создан, но по какой-то причине логин завершился неудачно.

+0

Спасибо за ответ Brent. Да, пользователь, кажется, вошел в систему, когда я смотрю на него в панели администратора Joomla. Итак, как я могу убедиться, что cookie отправлен в браузер правильно? – smetal

+0

Чтобы добавить дополнительную информацию, я сделал 'print_r ($ _ COOKIE)' и получил это как результат: 'Array ([cda9c54b0cf57045124dc5fead71f552] => + 55C + B + D4E10 + D5E5C134340 + 7135F55 + C52405A17 + B + 9 + 91657 + 412 + D53 + B5F + 5 + D1B + C4659 + F5C4441574011165E46 + 51559125E + 0 + A1145115E19 [ff7c10b0a83d93e205965dd611041a95] => 6dfqlukf5fcq1qig3etjv413c3) ' Кроме того, как я могу идти о возвращении нужной страницы пользователя? Могу ли я использовать функцию 'header ('Location:')'? – smetal

+0

Хорошо, это полезно. Я должен был спросить об этом раньше - какая версия Joomla? Что касается перенаправления пользователя, вы можете использовать функцию 'header ('Location:')', которая не должна быть проблемой. –