2010-05-25 7 views
0

Я хочу экспортировать таблицу Excel с PHP. Эта таблица содержит ссылки на фактический веб-сайт. Проблема в том, что эти ссылки могут быть видны только аутентифицированному пользователю. Когда я нажимаю ссылки в файле Excel, даже если я вошел на свой сайт (так что технически уже начался сеанс), страница не открывается, а перенаправляет меня на экран входа (так что начинает другую сессию).Excel, Php и сеансы

Любые решения?

+0

Идея состоит в том, что Excel не использует файлы cookie, поэтому он не отправляет данные сеанса. Я подумывал добавить параметр запроса для каждой ссылки в моем файле excel. В php, если этот параметр запроса присутствует, позволяет перенаправить на тот же URL-адрес, без параметра запроса. Похоже, что когда это происходит, данные сеанса отправляются. Однако это работает, только если я делаю некоторый вывод перед этим перенаправлением (так что перенаправление действительно не происходит). Любые идеи? – VladFr

ответ

0

Этот вопрос является поддельным :)

Там должна быть ошибка в моем приложении, поскольку информация сеанса держатся, когда я нажимаю ссылку в Excel.

+0

Что делать, если вы закроете браузер, прежде чем нажимать на ссылку? – Joseph

0

Что вы, вероятно, захотите сделать, это создать уникальный идентификатор для пользователя. Этот ключ будет добавлен в конец URL-адреса. Когда пользователь нажимает на URL-адрес в файле, ключ затем регистрирует их на сайте на той странице, на которую они нажали.

Сгенерированный URL будет выглядеть примерно так:

http://www.mysite.com/linkedpage.php?SK=asdsomerandomstring123 

если они должны быть сохранены, то значения сеанса должны быть сохранены в базе данных или в упорядоченный массив или индивидуально.

Есть неотъемлемые проблемы с безопасностью, позволяющие вводить логин на основе ключа в URL-адресе, поэтому вам нужно взвесить удобство того, что вы пытаетесь сделать, против любых проблем безопасности, которые будут с ним связаны.

+0

Да, проблемы с безопасностью - это то, чего я пытаюсь избежать, видя, что эти файлы Excel очень удобны в любом месте :) Однако очень неудобно не иметь эту функцию (приходится регистрироваться каждый время, когда вы нажимаете ссылку в excel). Я решил проблему с перенаправлением, описанным в комментарии. Однако я не могу понять, почему это делается. – VladFr

+0

Возможно, это связано с тем, что реферер не находится на одном сайте. Возможно, что это приведет к неправильной загрузке cookie сеанса. В любом случае «перенаправление» будет вашим лучшим выбором. И чтобы действительно повеселиться с людьми, вы можете использовать случайное генерирование строк, о котором я упоминал, а затем просто перенаправить, если переменная существует. Он не будет автоматически регистрировать их, и вы позаботитесь о входе из Excel и о том, кто пытается взломать. – Joseph

Смежные вопросы