Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

15.07.2009, 23:04
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
К примеру так
Вызов на странице функции test
Код:
function Inint_AJAX()
{
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {} //IE
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} //IE
try { return new XMLHttpRequest(); } catch(e) {} //Native Javascript
alert("XMLHttpRequest not supported");
return null;
}
function test(параметры)
{
var type = document.getElementById("type");
var url = 'modules/test.php?what=' + type.value;
var req = Inint_AJAX();
req.onreadystatechange = function ()
{
if (req.readyState == 4)
{
if (req.status == 200)
{
var text = req.responseText.toString(); //return value
//Выполнение действия с результатом php ответа text
}
}
};
req.open('GET', url, true); //make connection
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=cp1251'); // set Header
req.send(null); //send value
}
test.php
Код:
<?php
If ($_GET['type'])
}
echo($_GET['type']); //Отправка AJAX'у ответ
}
?>
Последний раз редактировалось FireFenix; 23.07.2009 в 14:13..
|
|
|

15.07.2009, 23:05
|
|
Banned
Регистрация: 05.05.2009
Сообщений: 42
Провел на форуме: 293979
Репутация:
18
|
|
n0reply - спасибо что не поленился все рассказать буду эксперементировать. Хотя уже понимаю из вышесказанного что этот способ будет не оптимальным, а мне нужна хотябы 99% работоспособность.
PS Если ктонибудь знает еще способы по заданию кукисов с использованием реального форматама времени пользователя + добавление секунд жизни, пожалуйста отписывайтесь здесь.
|
|
|

15.07.2009, 23:11
|
|
Banned
Регистрация: 05.05.2009
Сообщений: 42
Провел на форуме: 293979
Репутация:
18
|
|
Спасибо за помошь. Всем по Плюсику.
n0reply в опере заработала используя toGMTString() , щас попробую метод Феникса. Думаю пост можно закрывать.
|
|
|

15.07.2009, 23:15
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Последний раз редактировалось FireFenix; 15.07.2009 в 23:17..
|
|
|

15.07.2009, 23:43
|
|
Новичок
Регистрация: 31.03.2009
Сообщений: 14
Провел на форуме: 97409
Репутация:
6
|
|
Проверил твой JS вариант (с toGMTString() ) на FireFox'e (в линухе), тоже все работает, скорее всего просто FF по умолчанию время выводит в GMT формате, наверное и в других броузерах будет работать, если ты в винде, то на IE проверить не долго.
|
|
|

15.07.2009, 23:56
|
|
Новичок
Регистрация: 31.03.2009
Сообщений: 14
Провел на форуме: 97409
Репутация:
6
|
|
Как еще один вариант, попробуй обойтись вообще без JS, чистым пхп, примерно так:
PHP код:
<?php
function set_cookie($Name, $Value = '', $MaxAge = 0, $Path = '', $Domain = '', $Secure = false, $HTTPOnly = false) {
header('Set-Cookie: ' . rawurlencode($Name) . '=' . rawurlencode($Value)
. (empty($MaxAge) ? '' : '; Max-Age=' . $MaxAge)
. (empty($Path) ? '' : '; path=' . $Path)
. (empty($Domain) ? '' : '; domain=' . $Domain)
. (!$Secure ? '' : '; secure')
. (!$HTTPOnly ? '' : '; HttpOnly'), false);
}
# examples:
set_cookie("test111", "bar", 10); /* через 10 секунд кончитсья */
set_cookie("TestCookie", "value", 3600, "/~rasmus/", ".example.com", 1);
?>
по http://www.faqs.org/rfcs/rfc2109.html у Set-Cookie (заголовка) есть параметр Max-Age=delta-seconds. Который задает интервал жизни куки в секундах.
|
|
|

16.07.2009, 18:09
|
|
Banned
Регистрация: 05.05.2009
Сообщений: 42
Провел на форуме: 293979
Репутация:
18
|
|
Сообщение от n0reply
Как еще один вариант, попробуй обойтись вообще без JS, чистым пхп, примерно так:
PHP код:
<?php
function set_cookie($Name, $Value = '', $MaxAge = 0, $Path = '', $Domain = '', $Secure = false, $HTTPOnly = false) {
header('Set-Cookie: ' . rawurlencode($Name) . '=' . rawurlencode($Value)
. (empty($MaxAge) ? '' : '; Max-Age=' . $MaxAge)
. (empty($Path) ? '' : '; path=' . $Path)
. (empty($Domain) ? '' : '; domain=' . $Domain)
. (!$Secure ? '' : '; secure')
. (!$HTTPOnly ? '' : '; HttpOnly'), false);
}
# examples:
set_cookie("test111", "bar", 10); /* через 10 секунд кончитсья */
set_cookie("TestCookie", "value", 3600, "/~rasmus/", ".example.com", 1);
?>
по http://www.faqs.org/rfcs/rfc2109.html у Set-Cookie (заголовка) есть параметр Max-Age=delta-seconds. Который задает интервал жизни куки в секундах.
Отлично =) Думаю самый лучший вариант, $MaxAge - решение всех проблем, никогда не слышал о нем раньше
Последний раз редактировалось Whois; 16.07.2009 в 18:21..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|