Вы не зашли.
Главная » PHP » Реферер
#1. AGENT Off (2)
Участник
2009.02.22 15:03
Почему не работает скрипт записи и вывода рефа? Задолбался уже. Белый экран в водит и все тут.
Добавлено спустя   5 минут  10 секунд:
Код:
Таблица: CREATE TABLE `referer` (
url varchar(100) NOT NULL,
hits int(10) DEFAULT '0' NOT NULL,
PRIMARY KEY (url)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
файл который необходимо инклюдить в нужные страницы:
<?php
$hostname1 = "";
$username1 = "";
$password1 = "";
$userstable1 = "referer";
$dbName1 = "";
$ref = strtolower($HTTP_REFERER);
if(!empty($ref)){
mysql_connect($hostname1,$username1, $password1) or die (mysql_error());
mysql_select_db("$dbName1") or die(mysql_error());
$query = "select * from $userstable1 where url = '$ref'";
$result = mysql_query($query);$rows = mysql_num_rows ($result);
if ($rows == 0){
$hits = "1";
$query1 = "insert into $userstable1 (url,hits) values ('$ref','$hits')";
else {
$hitquery = "select hits from $userstable1 where url = '$ref'";
$result2 = mysql_query($hitquery);
$row = mysql_fetch_array($result2);
$hits = $row["hits"];
$query2 = "update $userstable1 set hits = hits+1 where url = '$ref'";
mysql_query($query2);
} }
?>
файл вывода информации:
<?php
 
$hostname1 = "";
$username1= "";
$password1 = "";
$userstable1 = "referer";
$dbName1 = "";
 
$color10 = "#FFFF00";
$color20 = "#FF0000";
$color50 = "#008000";
$color1k = "#0000FF";
$color2k = "#0000A0";
$color5k = "#000040";
 
mysql_connect($hostname1, $username1,$password1) or die (mysql_error());
mysql_select_db("$dbName1") or die(mysql_error());
 
$query = "select * from $userstable1 order by hits desc";
$result = mysql_query($query);
$number = mysql_num_rows($result) or die (mysql_error ());
$i = 0;
if ($number == 0) {
echo '<center><p><b>Сведений о рефералах не обнаружено!</b></center>';
}
elseif ($number >= 1) {
while ($i < $number){
$row = mysql_fetch_array($result);
$hits = $row["hits"];
$ref = $row["url"];
if ($hits <10){
$color = "$color10";
} elseif (($hits >= 10 ) and ($hits < 20)){
$color = "$color20";
} elseif (($hits >= 20 ) and ($hits < 50)){
$color = "$color50";
} elseif (($hits >= 50 ) and ($hits < 100)){
$color = "$color1k";
} elseif (($hits >= 100 ) and ($hits < 200)){
$color = "$color2k";
} elseif ($hits >= 200){
$color = "$color5k";
}
echo "<div align="left">";
echo "<table cols="3" border="0" width="100%"><tr><td align="left" width="400"><b><a href="$ref">$ref</a></b></td>";
echo "<td align="right" width="60"><b>$hits</b></td>";
echo "<td align="left" width="$hits" bgcolor="$color"></td></tr>";
$i++;
echo"</table>";
}
}
?>
#2. AGENT Off (2)
Участник
2009.02.22 15:03
В чем проблема может быть?
#3. Gemorroj Off (107)
Administrator
2009.02.22 15:03
где ты этот скрипт взял?
Добавлено спустя    32 секунды:
в глобальных переменных, скрипт написан на включенных.
Добавлено спустя   2 минуты  25 секунд:
echo "<div align="left">";
вот тут ошибка.
else {
и вот тут ошибка.
#4. AGENT Off (2)
Участник
2009.02.22 16:04
Скрипт в сети нашел. Точнее как шаблон. А как сделать чтоб работало и без глобальных чтоб было? smile
Добавлено спустя   1 минуту  11 секунд:
Правда я там чуть полазил ))изначально не такой был скрипт
#5. Gemorroj Off (107)
Administrator
2009.02.22 16:04
$HTTP_REFERER заменить на $_SERVER['HTTP_REFERER']; ну и переменные которые приходят извне принимаь соответственно через $_GET и $_POST
#6. AGENT Off (2)
Участник
2009.02.22 16:04
A вот переменные которые приходят из вне я не смогу заменить. Точнее найти((
#7. AGENT Off (2)
Участник
2009.02.22 17:05
Это получится $ref = strtolower($_SERVER['HTTP_REFERER']);
а переменные нужно заменить $ref,$hits?
Добавлено спустя   1 минуту  35 секунд:
$row убрать и поставить $_POST?
#8. Gemorroj Off (107)
Administrator
2009.02.22 17:05
$_POST['row'] если эта переменна приходти POST методом.
#9. AGENT Off (2)
Участник
2009.02.22 17:05
$hits=$_POST['row']["hits"] что ли получится? *WALL* а как узнать каким методом передается?
Отредактировано AGENT (2009.02.22 17:05)
#10. Gemorroj Off (107)
Administrator
2009.02.22 17:05
$row = mysql_fetch_array($result); ты эту переменную имеешь ввиду чтоли?
если видишь переменную в url, то это GET, если нет, то это POST
Страниц: 1 2 35 Все
Главная
WEB
PunBB Mod v0.6.2
0.018 s