Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: запись в файл "откуда пришол юзер" [2]
Форумы портала PHP.SU » » Вопросы новичков » запись в файл "откуда пришол юзер"

Страниц (2): « 1 [2]
 

16. foozzi - 03 Сентября, 2011 - 19:59:04 - перейти к сообщению
в коде White синтаксическая ошибка... но все написано верно, что за....?
исправил, и даже код укоротил, все равно пишет таким образом
CODE (htmlphp):
скопировать код в буфер обмена
  1. Адресс пользователя 31.***.***.52
  2. Откуда пришол
  3. Часовой пояс Europe/Moscow

то есть "Откуда пришол" ничего нет

вот укороченый код
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $fileref = 'ref.txt';
  4. $ip = 'Адресс пользователя ' . $_SERVER['REMOTE_ADDR'];
  5. $date_time = 'Часовой пояс ' . date_default_timezone_get();
  6. $link = 'Откуда пришол ' . $_SERVER['HTTP_REFERER'];
  7. $ref = "$ip\r" . "$link\r" . "$date_time";
  8.  
  9. if (!stristr($_SERVER['HTTP_REFERER'],"сайт.ru")) {
  10. // Проверка на запись
  11. if (is_writable($fileref)) {
  12.  if (!$handle = fopen($fileref, 'a')) {
  13.          echo "Не могу открыть файл ($fileref)";
  14.          exit;
  15.     }
  16.  
  17. // Запись  
  18. if (fwrite($handle, "$ref\r\n") === FALSE)
  19. {
  20.         echo "Не могу произвести запись в файл ($fileref)";
  21.         exit;
  22.     }
  23. // Закрываем файл    
  24.     fclose($handle);
  25.  
  26. } else {
  27.     echo "Файл $fileref недоступен для записи";
  28. }
  29.   }
  30. ?>
17. White - 03 Сентября, 2011 - 20:43:01 - перейти к сообщению
foozzi моего кода здесь нет, здесь есть ваш, в котором одна строка переместилась выше Подмигивание
HTTP_REFERER пустой когда:
1) адрес страницы введен прямо в строку запроса
2) ее нажали в закладках
3) клиент ее не поддерживает (экзотические браузеры, curl если не установлен соответствующий заголовок, поисковые роботы и еще много вариантов).
измените 6 строку на следующее:
PHP:
скопировать код в буфер обмена
  1. if($_SERVER['HTTP_REFERER']) $link = 'Откуда пришел ' . $_SERVER['HTTP_REFERER']; else $link = 'Откуда пришел неизвестно' ;

date_default_timezone_get() кстати читает настройки php.ini а не клиента.
18. foozzi - 03 Сентября, 2011 - 20:50:20 - перейти к сообщению
White а нельзя ли просто что бы не записывалось ничего, даже пробелов и переносов?

про date_default_timezone_get() спс, не знал... прост один умник посоветовал...
19. White - 03 Сентября, 2011 - 23:12:35 - перейти к сообщению
тогда так
PHP:
скопировать код в буфер обмена
  1. if ($_SERVER['HTTP_REFERER'] and !stristr($_SERVER['HTTP_REFERER'],"сайт.ru")) {
  2.         $fileref = 'ref.txt';
  3.         $ip = 'Адресс пользователя ' . $_SERVER['REMOTE_ADDR'];
  4.         $link = 'Откуда пришол ' . $_SERVER['HTTP_REFERER'];
  5.         $ref = "$ip\r\n" . "$link\r\n";
  6.         if (is_writable($fileref)) {
  7.                 if (!$handle = fopen($fileref, 'a')) die("Не могу открыть файл ($fileref)");
  8.                 if (fwrite($handle, "$ref\r\n") === FALSE) die("Не могу произвести запись в файл ($fileref)");
  9.                 fclose($handle);
  10.         } else echo "Файл $fileref недоступен для записи";
  11. }
20. foozzi - 04 Сентября, 2011 - 20:04:22 - перейти к сообщению
спс проде норм теперь


Цитата:
Днепропетровск

почти земляки)
21. DeepVarvar - 04 Сентября, 2011 - 21:45:45 - перейти к сообщению
foozzi пишет:
почти земляки)

foozzi пишет:
/usr/local/foozzi

Радость Радость Радость
22. White - 04 Сентября, 2011 - 22:41:43 - перейти к сообщению

foozzi пишет:
/usr/local/foozzi
тогда не земляки, я из /home/some_user Радость

 

Powered by ExBB FM 1.0 RC1