Форум -> Обо всём... -> Не работает стат... | Не работает стат... |
---|
makarovgosha | Дата: 06.07.2008, в 14:16 | Сообщение №1 | УчастникПользователь №: 333 Сообщений: 56
| В общем, посмотрите содержимое этого файла, и скажите, что в нём не так? Это файл из нюки, чтобы статистику посетителей записывать в базу. (Собираюсь юзать модуль Statistics нюковский)
:
PHP - Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
| <?php
if (stristr($_SERVER['PHP_SELF'], "counter.php")) { Header("Location: index.php"); die(); } global $prefix, $db;
/* Get the Browser data */
if ((ereg("Nav", $_SERVER["HTTP_USER_AGENT"])) || (ereg("Gold", $_SERVER["HTTP_USER_AGENT"])) || (ereg("X11", $_SERVER["HTTP_USER_AGENT"])) || (ereg("Mozilla", $_SERVER["HTTP_USER_AGENT"])) || (ereg("Netscape", $_SERVER["HTTP_USER_AGENT"])) AND (!ereg("MSIE", $_SERVER["HTTP_USER_AGENT"])) AND (!ereg("Konqueror", $_SERVER["HTTP_USER_AGENT"])) AND (!ereg("Yahoo", $_SERVER["HTTP_USER_AGENT"])) AND (!ereg("Firefox", $_SERVER["HTTP_USER_AGENT"]))) $browser = "Netscape"; elseif(ereg("Firefox", $_SERVER["HTTP_USER_AGENT"])) $browser = "FireFox"; elseif(ereg("MSIE", $_SERVER["HTTP_USER_AGENT"])) $browser = "MSIE"; elseif(ereg("Lynx", $_SERVER["HTTP_USER_AGENT"])) $browser = "Lynx"; elseif(ereg("Opera", $_SERVER["HTTP_USER_AGENT"])) $browser = "Opera"; elseif(ereg("WebTV", $_SERVER["HTTP_USER_AGENT"])) $browser = "WebTV"; elseif(ereg("Konqueror", $_SERVER["HTTP_USER_AGENT"])) $browser = "Konqueror"; elseif((eregi("bot", $_SERVER["HTTP_USER_AGENT"])) || (ereg("Google", $_SERVER["HTTP_USER_AGENT"])) || (ereg("Slurp", $_SERVER["HTTP_USER_AGENT"])) || (ereg("Scooter", $_SERVER["HTTP_USER_AGENT"])) || (eregi("Spider", $_SERVER["HTTP_USER_AGENT"])) || (eregi("Infoseek", $_SERVER["HTTP_USER_AGENT"]))) $browser = "Bot"; else $browser = "Other";
/* Get the Operating System data */
if(ereg("Win", $_SERVER["HTTP_USER_AGENT"])) $os = "Windows"; elseif((ereg("Mac", $_SERVER["HTTP_USER_AGENT"])) || (ereg("PPC", $_SERVER["HTTP_USER_AGENT"]))) $os = "Mac"; elseif(ereg("Linux", $_SERVER["HTTP_USER_AGENT"])) $os = "Linux"; elseif(ereg("FreeBSD", $_SERVER["HTTP_USER_AGENT"])) $os = "FreeBSD"; elseif(ereg("SunOS", $_SERVER["HTTP_USER_AGENT"])) $os = "SunOS"; elseif(ereg("IRIX", $_SERVER["HTTP_USER_AGENT"])) $os = "IRIX"; elseif(ereg("BeOS", $_SERVER["HTTP_USER_AGENT"])) $os = "BeOS"; elseif(ereg("OS/2", $_SERVER["HTTP_USER_AGENT"])) $os = "OS/2"; elseif(ereg("AIX", $_SERVER["HTTP_USER_AGENT"])) $os = "AIX"; else $os = "Other";
/* Save on the databases the obtained values */
$db->sql_query("UPDATE ".$prefix."_counter SET count=count+1 WHERE (type='total' AND var='hits') OR (var='$browser' AND type='browser') OR (var='$os' AND type='os')"); update_points(13);
/* Start Detailed Statistics */
$dot = date("d-m-Y-H"); $now = explode ("-",$dot); $nowHour = $now[3]; $nowYear = $now[2]; $nowMonth = $now[1]; $nowDate = $now[0]; $sql = "SELECT year FROM ".$prefix."_stats_year WHERE year='$nowYear'"; $resultyear = $db->sql_query($sql); $jml = $db->sql_numrows($resultyear); if ($jml <= 0) { $sql = "INSERT INTO ".$prefix."_stats_year VALUES ('$nowYear','0')"; $db->sql_query($sql); for ($i=1;$i<=12;$i++) { $db->sql_query("INSERT INTO ".$prefix."_stats_month VALUES ('$nowYear','$i','0')"); if ($i == 1) $TotalDay = 31; if ($i == 2) { if (date("L") == true) { $TotalDay = 29; } else { $TotalDay = 28; } } if ($i == 3) $TotalDay = 31; if ($i == 4) $TotalDay = 30; if ($i == 5) $TotalDay = 31; if ($i == 6) $TotalDay = 30; if ($i == 7) $TotalDay = 31; if ($i == 8) $TotalDay = 31; if ($i == 9) $TotalDay = 30; if ($i == 10) $TotalDay = 31; if ($i == 11) $TotalDay = 30; if ($i == 12) $TotalDay = 31; for ($k=1;$k<=$TotalDay;$k++) { $db->sql_query("INSERT INTO ".$prefix."_stats_date VALUES ('$nowYear','$i','$k','0')"); } } }
$sql = "SELECT hour FROM ".$prefix."_stats_hour WHERE (year='$nowYear') AND (month='$nowMonth') AND (date='$nowDate')"; $result = $db->sql_query($sql); $numrows = $db->sql_numrows($result);
if ($numrows <= 0) { for ($z = 0;$z<=23;$z++) { $db->sql_query("INSERT INTO ".$prefix."_stats_hour VALUES ('$nowYear','$nowMonth','$nowDate','$z','0')"); } }
$db->sql_query("UPDATE ".$prefix."_stats_year SET hits=hits+1 WHERE year='$nowYear'"); $db->sql_query("UPDATE ".$prefix."_stats_month SET hits=hits+1 WHERE (year='$nowYear') AND (month='$nowMonth')"); $db->sql_query("UPDATE ".$prefix."_stats_date SET hits=hits+1 WHERE (year='$nowYear') AND (month='$nowMonth') AND (date='$nowDate')"); $db->sql_query("UPDATE ".$prefix."_stats_hour SET hits=hits+1 WHERE (year='$nowYear') AND (month='$nowMonth') AND (date='$nowDate') AND (hour='$nowHour')");
?> |
Он ругается на те строки, где UPDATE базы... говорит чтото типа "non-object..". Как быть?
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно makarovgosha 06.07.2008 г. в 14:17:11 |
| | | makarovgosha | Дата: 06.07.2008, в 16:15 | Сообщение №2 | УчастникПользователь №: 333 Сообщений: 56
| ps - прилепляю его с помощью include("function/counter.php") в index.php. |
| | makarovgosha | Дата: 07.07.2008, в 20:29 | Сообщение №3 | УчастникПользователь №: 333 Сообщений: 56
| | | Serg_pnz | Дата: 08.07.2008, в 09:28 | Сообщение №4 | АдминистраторПользователь №: 1 Сообщений: 2242
| makarovgosha, дамп структуры таблиц в студию | Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот |
| | goshan | Дата: 12.07.2008, в 20:20 | Сообщение №5 | ПользовательПользователь №: 282 Сообщений: 49
| мне кажется, не в базе дело... таблицы я взял из нюки и без изменений вставил в слаед (только префикс поменял) ... |
| | | Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!
|
|