Я пишу приложение, которое использует сеансы на основе файлов cookie для аутентификации. Все было хорошо, пока я не попытался интегрировать плагин uploadify jQuery в мой сайт. Мне нужно загрузить файл для отправки файлов в мой файл upload.php
. Когда я проверяю наличие любых известных переменных сеанса в этом upload.php
сценарии, я ничего не получаю. Я попытался print_r($_SESSION)
и получил пустой массив.
Я не уверен, является ли это проблемой с моим кодом сессий php или с моим кодом загрузки jquery. Я немного новичок в обоих.
/** INSIDE JQUERY **/
$('.fileUploadify').uploadify({
'scriptData': {'filesUploaded':'1','PHPSESSID' : <?php echo json_encode(session_id()); ?>},
...
/** UPLOAD.PHP **/
if(isset($_REQUEST['PHPSESSID']))
session_id($_REQUEST['PHPSESSID']);
if(!isset($_GET['logout']) && isset($_SESSION['user']) && $_SESSION['ipadd'] == $_SERVER['REMOTE_ADDR']) {
define('USERHASH',$_SESSION['user']);
require_once('lib/ez_sql_core.php');
require_once('lib/ez_sql_sqlite.php');
require_once('lib/functions.php');
$db = new ezSQL_sqlite('./'.USERHASH.'/','fileInformationBase.sqlite');
$mdb = new ezSQL_sqlite('./','fileServMain.sqlite');
$stats = $mdb->get_row("SELECT ID,bandwidthUsage,lastLogin,...
} else die('No no no');
upload.php
возвращает «Нет, нет, нет» каждый раз. Я проверил идентификатор сеанса, и он правильно отправляет файл upload.php.
На моих обычных заголовках страниц у меня нет этой проблемы, когда я просто начинаю раздел авторизации с session_start()
, а затем с той же строкой if(isset($_SESSION['user']) && $_SESSION['ipadd] ...) {
, которая работает как положено.
<ч />
Редактировать
Это сгенерированный код для скрипта jQuery выше
'scriptData': {'filesUploaded':'1','PHPSESSID' :"m3vgn7j6a7nd3ckppnio1ln3e1" }
И добавление echo $_REQUEST['PHPSESSID']
в скрипт upload.php выводит
'sjojolnjtcutbomceh50os3kg4'