| |
|
|
| | Помогите дописать скрипт!!!!
Думаю многим из wap пригодится!!!!
<?php
//// Определяем айпи и браузер посетителя и сразу "склеиваем" их в строчку вида IP::::БРАУЗЕР, time() я сюда добавил чтобы в зависимости от времени удалять слиш ком старые записи
$info = $_SERVER['REMOTE_ADDR'] . '::::' . $_SERVER['HTTP_USER_AGENT'] . '::::' . time();
//// Берем данные из файла, в котором хранится информация о посетителях
$users = file("users.dat");
///// Зададим переменную, в которой будем собирать информацию заново (удаляя при этом старые записи)
$temp = NULL;
///// Определяем, есть ли запись о посетителе в файле, для чего обходим в цикле массив:
foreach($users as $value)
{
$ex = explode("::::", $info);
$nx = explode("::::", $value);
// Проверяем, равна ли пара айпи::::браузер
if($ex[0] == $nx[0] AND $ex[1] == $nx[1])
// если да - проверяем время посещения
{
if($ex[2] > ($nx[2] + 84600)); /// если юзер не был более недели - нет смысла менять страницу, просто удалим запись о нем из нашего файла - удаление проис ходит за счет НЕ ЗАПИСЫВАНИЯ
/// иначе добавим в нашу переменную строчку..
else {
$temp .= trim($value) . "\n"; $new_page = TRUE;
}
}
// если же записи о этом пользователе не нашлось - добавим ее))
else {
$temp = trim($value) . "\n"; $new_page = FALSE;
}
}
// теперь $temp содержит в себе строчку со всеми данными)) осталось тока записать
fwrite(fopen("users.dat", "w"), $temp);
// Итак, разобрались с тем, был юзер и как давно, либо небыл вообще )) осталось кидать его на саму страницу:
if($new_page)
header("Location: page1.wml");
else header("Location: page2.wml"@);
?>
|
смысл скрипта такой:
надо чтоб юзер заходил на разные главные странички....
т.е. зашел, скрипт определил его IP, броузер записал в файл и переадресовал на 1 страничку
потом если юзер снова заходит ко мне на сайт он попадает на другую страничку...
потом на другую и так далее...
надо дописать в скрипте, чтоб скрипт записывал страничку, на которую он отправил юзера!!!
хочу сделать отдельный файл там будут ссылки и скрипт должен отправлять по ним $file = file(pages.dat) echo'$file[0-1-2-3-4-5]';
вот эти 0-1-2-3-4 скрипт должен записывать ...
\\\\\\
0-1-2-3-4-5 - это строки с ссылками в файле pages.dat
сама не поняла что написала... =) надеюсь вы поймете... и поможите... на вас вся надежда | |
| |
|
|
| |
|
|
| |
для: binura
(12.02.2007 в 11:15)
| | | А на файлах это реализовывать обязательно?
Через MySQL было бы проще... | |
| |
|
|
| |
|
|
| |
для: Trianon
(12.02.2007 в 11:25)
| | | ээээ... а кстати, интересная ситуация может быть с IP =)))
один зашел на 1 страницу, потом его выкинуло, и следующий, которому перепадет его IP попадет уже на 2 страницу...
мягко говоря - нелогично | |
| |
|
|
| |
|
|
| |
для: ZuArt
(12.02.2007 в 11:54)
| | | А если еще учесть,что IP имеют дурацкую привычку часто изменяться,а если работаешь через Mini-Opera,так это происходит чуть ли не каждые 5 минут... | |
| |
|
|
| |
|
|
| |
для: ZuArt
(12.02.2007 в 11:54)
| | | И еще если вспомнить,что наверно 75% в вапе пользуют MiniOpera,и у всех у них будет одинаковый USER_AGENT и почти одни и те же IP,то путаница будет...:-) | |
| |
|
|
| |
|
|
| |
для: Ralph
(12.02.2007 в 13:05)
| | | мини опера передает также РЕАЛЬНУЮ модель телефона и РЕАЛЬНЫЙ ип юзера, так что это не проблема, а вот с одинаковыми ип это уже да...
возможно лучше сделать что-то типа регистрации, тогда таких проблем не будет. | |
| |
|
|
| |
|
|
| |
для: Disable
(12.02.2007 в 13:17)
| | | Вот поэтому,если для вапа писать,надо обязательно использовать также HTTP_X_FORW... и HTTP_X_OPERAMINI_PH... | |
| |
|
|
| |
|
|
| |
для: Ralph
(12.02.2007 в 13:05)
| | | Эт точно =)))
делаешь заказ, в сомнениях весь такой... цена смущает, тут выкидывает, другой заходит и нажимает кнопочку оплатить... и попробуй доказать, что ты не олень =))) | |
| |
|
|