[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Пишу скрипт на PHP, помогите плиз советом.
urj
Имеются входящие данные типа:

http://www.yoursite.ru/dir/scrip...itfm&txt=474
&tid=1234-aasvs-3345.1332&cn=ru&op=beeline&phone=79031234567&sn=8385

Необходимо их сохранитть в файл лога (log.txt) по принципу:

дата<->pref<->txt<->phone<->sn<->cn<->op<->tid

Поправьте меня если я не прав.
ПИШЕМ САМ СКРИПТ:


<? PHP

// P.S. Пишу скрипт первый раз.


$filename = "log.txt"; // Указываем файл.
$delitmer = "<->"; // Указываем разделитель.

// Присваиваем значение переменным.

$pref = $_GET['pref'];
$txt = $_GET['txt'];
$phone = $_GET['phohe'];
$sn = $_GET['sn'];
$cn = $_GET['cn'];
$op = $_GET['op'];
$tid = $_GET['tid'];

// Я прав???? Поправьте меня пока я не сотворил апокалипс.

$arr = array(date("d.m.y"), $pref, $txt, $phone, $sn, $cn, $op, $tid);
$new_log = implode($delitmer, $arr) . "\r\n";
$log_arr = @file($filename);
$log_str = $new_log;
$log_str . = trim(implode("", $log_arr));

// Что-то типа того. wacko.gifwacko.gifwacko.gifwacko.gifwacko.gifwacko.gif

// Творю дальшее ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif

$fp = fopen($filename, "w+");
fwrite($fp, $log_str);
fclose($fp);

?>

// Вроде все....
// huh.gif huh.gif huh.gif blink.gif blink.gif blink.gif blink.gif wacko.gif wacko.gif wacko.gif
// Поправьте меня. wacko.gif wacko.gif wacko.gif wacko.gif wacko.gif



Спустя 49 минут, 16 секунд (14.12.2009 - 21:34) Gabriel написал(а):
$arr = array(date("d.m.y"), $pref, $txt, $phone, $sn, $cn, $op, $tid);
$new_log = implode($delitmer, $arr) . "\r\n";

хммм..... очень интересно создаем масив, потом перечисляем составляющие через не существуещий символ в масиве. или я снова что-то упустил?
да и зачем такие танцы с имплодами? и кавычки в GET либо ' либо ".

Спустя 2 минуты, 24 секунды (14.12.2009 - 21:37) VolCh написал(а):
если не проверять данные на корректность и не заботиться об универсальности, то всё куда проще:


file_put_contents("log.txt", date("d.m.y")."<->$_GET['pref']<->$_GET['txt']<->$_GET['phohe']<->$_GET['sn']<->$_GET['cn']<->$_GET['op']<->$_GET['tid']\r\n", FILE_APPEND)

smile.gif

Спустя 7 минут, 39 секунд (14.12.2009 - 21:45) olgatcpip написал(а):
Смею поправить
file_put_contents("log.txt", date("d.m.y")."<->{$_GET['pref']}<->{$_GET['txt']}<->...{$_GET['tid']}\r\n", FILE_APPEND)



Спустя 3 минуты, 18 секунд (14.12.2009 - 21:48) VolCh написал(а):
В принципе, согласен, но, по-моему, и мой вариант будет работать, хотя ваш гарантированно

Спустя 16 часов, 12 минут, 3 секунды (15.12.2009 - 14:00) urj написал(а):
Если я правильно понял , то получиться что-то типа этого: ???????????????????

<? PHP

$pref = $_GET['pref'];
$txt = $_GET['txt'];
$phone = $_GET['phohe'];
$sn = $_GET['sn'];
$cn = $_GET['cn'];
$op = $_GET['op'];
$tid = $_GET['tid'];

file_put_contents("log.txt", date("d.m.y")."<->{$_GET['pref']}<->{$_GET['txt']}<->{$_GET['phohe']}<->{$_GET['sn']}<->{$_GET['cn']}<->{$_GET['op']}<->{$_GET['tid']}\r\n", FILE_APPEND);

?>


?????????????????????????

Спустя 2 минуты, 14 секунд (15.12.2009 - 14:02) glock18 написал(а):
olgatcpip
VolCh
в чем разница?

Спустя 11 минут, 7 секунд (15.12.2009 - 14:13) twin написал(а):
В скобках быстрее

Спустя 2 часа, 46 минут, 1 секунда (15.12.2009 - 16:59) urj написал(а):
<?PHP

$filename = "log.txt"; // Указываем файл.

$txt = addslashes($_GET[`txt`]); // Фильтруем входные данные. ???????????

// Присваиваем значение переменным.


$pref = $_GET['pref'];
$txt = $_GET['txt'];
$phone = $_GET['phohe'];
$sn = $_GET['sn'];
$cn = $_GET['cn'];
$op = $_GET['op'];
$tid = $_GET['tid'];

// Пишем в файл.
file_put_contents("log.txt", date("d.m.y")."<->{$_GET['pref']}<->{$_GET['txt']}<->{$_GET['phohe']}<->{$_GET['sn']}<->{$_GET['cn']}<->{$_GET['op']}<->{$_GET['tid']}\r\n", FILE_APPEND);

?>


// Я прав ??????????????????????????

Спустя 2 часа, 39 минут, 26 секунд (15.12.2009 - 19:39) VolCh написал(а):
нет, не надо кучи присваиваний и такой фильтрации, я написал просто одну строчку из которой должен состоять скрипт smile.gif (не считая <?php ?>)

Спустя 51 минута, 50 секунд (15.12.2009 - 20:30) urj написал(а):
ААААААААААААААА
Понял.
СПС.
Круто. работает........... smile.gif smile.gif smile.gif

Спустя 6 минут, 3 секунды (15.12.2009 - 20:37) VolCh написал(а):
только надо понимать, что это решение "в лоб", ни о какой универсальности или корректности/безопасности параметров речи не идёт

Спустя 24 минуты, 31 секунда (15.12.2009 - 21:01) urj написал(а):
Аесли так????????


<?PHP
$pref = addslashes($_GET[`pref`]);
$txt = addslashes($_GET[`txt`]);
$phone = addslashes($_GET[`phohe`]);
$sn = addslashes($_GET[`sn`]);
$cn = addslashes($_GET[`cn`]);
$op = addslashes($_GET[`op`]);
$tid = addslashes($_GET[`tid`]);

file_put_contents("log.txt", date("d.m.y")."<->{$_GET['pref']}<->{$_GET['txt']}<->{$_GET['phohe']}<->{$_GET['sn']}<->{$_GET['cn']}<->{$_GET['op']}<->{$_GET['tid']}\r\n", FILE_APPEND);

?>


Я думаю что можно далее модернезировать скрипт?????????????7

Спустя 25 минут, 13 секунд (15.12.2009 - 21:26) VolCh написал(а):
Почитай http://phpforum.ru/index.php?showtopic=21213 твои addslashes практически ни одной проблемы не решают, да и нет их 9проблем с безопасностью) по большому счёту, если всё что нужно это логировать запросы

Спустя 6 минут, 2 секунды (15.12.2009 - 21:32) urj написал(а):
Как взять случайным образом три строки из файла???
из первой колонки (Только цифры) с номером строки???????

1111<->qqqq
2222<->wwww
3333<->eeee
4444<->rrrr
5555<->tttt
6666<->yyyy
7777<->uuuu
8888<->iiii
9999<->oooo

И отправить их в файл???????????????????? wacko.gif wacko.gif wacko.gif wacko.gif wacko.gif

Спустя 3 минуты, 29 секунд (15.12.2009 - 21:36) urj написал(а):
Цитата (VolCh @ 15.12.2009 - 18:26)
Почитай http://phpforum.ru/index.php?showtopic=21213 твои addslashes практически ни одной проблемы не решают, да и нет их 9проблем с безопасностью) по большому счёту, если всё что нужно это логировать запросы

это только кусочек кода.
Дальше эти данные идут на обработку.

Спустя 7 минут, 49 секунд (15.12.2009 - 21:44) VolCh написал(а):
Тогда зависит от того как именно они обрабатываются, да и нужно ли логировать абсолютно всё или только корректные запросы

Спустя 20 часов, 18 минут, 32 секунды (16.12.2009 - 18:02) urj написал(а):
В принцепе логировать все не так уж и обязательно, но хай буде. biggrin.gif biggrin.gif biggrin.gif biggrin.gif

Спустя 3 минуты, 1 секунда (16.12.2009 - 18:05) urj написал(а):
Меня больше интересует какой функциеей мне можно взять
первые значения из нескольких строк с их номерами???????????????
Пример:
1111<->qqqq
2222<->wwww
3333<->eeee
4444<->rrrr
5555<->tttt
6666<->yyyy
7777<->uuuu
8888<->iiii
9999<->oooo

надо получить
2=2222
5=5555
8=8888

КАК???? Подскажите плиз.

Спустя 3 часа, 44 минуты, 24 секунды (16.12.2009 - 21:50) urj написал(а):
А если ТАК:

<? PHP
$t = file("db.txt");
$t[0] - значение первой строки
$t[1] - значение второй строки и т.д.

list($t1,$t2) = explode("<->",$t[0])
?>


Помогите разобраться???????????

Спустя 1 час, 1 минута, 26 секунд (16.12.2009 - 22:51) Gabriel написал(а):
а разве у тебя разделители не так стоят?
1111<->qqqq<->
2222<->wwww<->
3333<->eeee<->
4444<->rrrr<->
5555<->tttt<->
6666<->yyyy<->
7777<->uuuu<->
8888<->iiii<->
9999<->oooo

Спустя 21 час, 3 минуты, 28 секунд (17.12.2009 - 19:54) urj написал(а):
Цитата (Gabriel @ 16.12.2009 - 19:51)
а разве у тебя разделители не так стоят?
1111<->qqqq<->
2222<->wwww<->
3333<->eeee<->
4444<->rrrr<->
5555<->tttt<->
6666<->yyyy<->
7777<->uuuu<->
8888<->iiii<->
9999<->oooo

НЕЕЕЕЕЕТ smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.