Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.04.2007, 23:26
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 1  
Ответить с цитированием
Chas
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
По умолчанию curl и сессия

с помощью curl хочу загрузить xml-страницу, сформированную моим же пхп-сервлетом.
загружаю таким образом:
Код:
	 $ch= curl_init();
	  curl_setopt($ch, CURLOPT_URL, "http://localhost/connector/connect.php");
//	  curl_setopt($ch, CURLOPT_HEADER, 0);
	  curl_setopt($ch, CURLOPT_HEADER, 0);  
	  
	  curl_setopt($ch, CURLOPT_VERBOSE, 1);
	  curl_setopt($ch, CURLOPT_POST, 1);
	  curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST['request']);
	  curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
                	  
	  $textcurl = curl_exec($ch);
      curl_close($ch);
только вот проблема. в connect.php есть проверка авторизации пользователя следующим образом: $_SESSION[logged]=1
и она проваливается, а дамп $_SESSION в connect.php показывает пустой массив. т.е. курл для загрузки данных создает видимо свою сессию.

можно ли заставить курл использовать текущую сессию?
__________________
~
Never trouble trouble till trouble troubles you!

Старый 25.04.2007, 12:56
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 2  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Убрать из своего скрипта проверку для IP адреса или передавать какое-нибудь кодовое слово в запросе.

И сдается мне, что Вы вообще не понимаете, что у вас там происходит. Во всяком случае "своя сессия для курла" - это выше моего понимания.
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 25.04.2007, 18:35
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 3  
Ответить с цитированием
Chas
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
имеется ввиду, что курл не использует сессию и куки броузера в своем соединении.
как оказалось нужно было добавить
Код:
curl_setopt($ch, CURLOPT_COOKIE, $_SERVER[HTTP_COOKIE]);
так передается в курл все куки, в том числе иномер сессии.
только перед этим обязательно, если оба скрипта на одном хосте, нужно выключить сессию вызывающего скрипта, иначе вызываемый скрипт подвиснет, пытаясь открыть уже открытую сессию.
__________________
~
Never trouble trouble till trouble troubles you!

Старый 25.04.2007, 19:10
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 4  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Да, действительно, какой недогадливый курл. Не отдает куки сам. Ну надо же.

Причем хочу добавить, что если разнести скрипт с курлом и скрипт, генерирующий данные на разные сервера - работать не будет.
Все почему ? Потому что HTTP протокол для автора скрипта остался некоей магической приблудой, которая работает через заклинание "curl". И автор снова придет с вопросом "куда деваются мои куки ?". Хех. НЕт бы теорию почитать...

А если Вы в пределах одного сервера из своих же скриптов через HTTP получаете данные - то мне остается только посочувствовать Вашему заказчику.
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 25.04.2007, 21:34
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 5  
Ответить с цитированием
Chas
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
ой, не надо кидать понты. гордыня - наказуемый богом грех.
коннектор предназначен для флешки, которая _естественно_ на этом же хосте, а тут мне просто понадобилась приблуда, где я смогу тестировать правильно ли выдается коннектором xml-ка.
если бы я хотел передать содержимое сессии на другой хост, я бы это сделал.
__________________
~
Never trouble trouble till trouble troubles you!


Последний раз редактировалось Chas; 25.04.2007 в 21:38.
Старый 26.04.2007, 12:26
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 6  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Chas, о грехах наших скорбных разговаривать - это к попам или к Горбатому.
А незнание - оно только для блаженных хорошо.
Рекомендую все же почитать про HTTP протокол, чтобы таких вот вопросов не возникало. Потому что флэшка "_естественно_ на этом же хосте" - это супер.
У Вас сервер на флэше работает ? Или все же флэшка будет работать у пользователя и таки отправять запросы к серверу ? И, если будет отправлять их, то каковы будут заголовки запросов и заголовки ответов сервера ?
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.