Как да разбера ип то на някой от сайта

Dark_Terror

Registered
Здравйете значи имам сайт http://beckem.1gb.bg/ но искам да бамна един който само ми пише глупости как да му разбера ип-то нямам система за регистрации има само една система за изпращане на данни до една страница.
 
<?
$ip=$_SERVER['REMOTE_ADDR'];
$sql=mysql_query("INSERT INTO ip (`id`, `ip`) VALUES ('NULL', '$ip')") or die (mysql_error());
?>
Така ще ти инсъртва в таблица ip - направи си такава ако не дай кода, чрез който се постват мнения или там каквото ти е за да ти вмъкна кода в нея.
 
това показва само моето ип искам да вида на сички които са влизали в сайта и ако може по някакъв начин да ги разлеча
 
$_SERVER['REMOTE_ADDR'] връща адреса на потребителя. За да го използваш сложи кода при добавянето на коментари (или където имаш нужда и искаш да се предпазиш от спам). След като някой тръгне да добавя коментар ,просто му записваш ИП-то (както ти е казал DeathGuard_) , след това остава елементарното да видиш кое ип е написал еди кой си коментар.
 
В phpMyAdmin , добавяш този код
ALTER TABLE `upload_ras` ADD `ip` VARCHAR(20) NOT NULL;
и във upload.php променяш малко заявката
mysql_query("INSERT INTO `files` (`subject`,`ip`) VALUES ('".htmlspecialchars($_POST['subject']).",'".$_SERVER['REMOTE_ADDR']."')");
след това влизаш в phpMyAdmin и си прелистваш резултати и засичаш ИП-то ,което ти трябва. Или си правиш някой файл ,който да ти изкарва същите тези резултати.
 
дава грешка като добавя това
CREATE TABLE `files` (
`id` int(12) NOT NULL auto_increment,
`pic` varchar(255) NOT NULL,
`file` varchar(255) NOT NULL,
`subject` text NOT NULL COLLATE utf8_general_ci,
ALTER TABLE `upload_ras` ADD `ip` VARCHAR(20) NOT NULL;
PRIMARY KEY(`id`)
);

ето и грешката:

Грешка

SQL заявка:

CREATE TABLE `files` (
`id` int( 12 ) NOT NULL AUTO_INCREMENT ,
`pic` varchar( 255 ) NOT NULL ,
`file` varchar( 255 ) NOT NULL ,
`subject` text NOT NULL COLLATE utf8_general_ci,
ALTER TABLE `upload_ras` ADD `ip` VARCHAR( 20 ) NOT NULL ;

MySQL отговори: Документация
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ALTER TABLE `upload_ras` ADD `ip` VARCHAR(20) NOT NULL' at line 6
 
Не може при CREATE TABLE да използваш и ALTER TABLE , двата кода са различни. Така както ти го бях написал в горния пост ,просто го добави в phpMyAdmin като SQL код.
 
я ми дай готовият sql че пак дава грешки ето ти първоначалният sql:

CREATE TABLE `files` (
`id` int(12) NOT NULL auto_increment,
`pic` varchar(255) NOT NULL,
`file` varchar(255) NOT NULL,
`subject` text NOT NULL COLLATE utf8_general_ci,
`ip` VARCHAR(20) NOT NULL;
PRIMARY KEY(`id`)
);
 
Dark_Terror каза:
я ми дай готовият sql че пак дава грешки ето ти първоначалният sql:

CREATE TABLE `files` (
`id` int(12) NOT NULL auto_increment,
`pic` varchar(255) NOT NULL,
`file` varchar(255) NOT NULL,
`subject` text NOT NULL COLLATE utf8_general_ci,
`ip` VARCHAR(20) NOT NULL,
PRIMARY KEY(`id`)
);
точно както си се опитал , само вместо ; трябва да си е си е запетайка ,
 
Преди доста време ми трябваше, за да следя кой и къде ми влиза в сайта и съответно, ако върши гадории да изяде "бан". Така наречените хахорчета, които доста бяха напълзяли сайта. Сега да преминем към системата. Хич не е сложа.. Състои се от два файла index.php и vlizaniq.php + mysql връзка, за да записваме ip-тата и от къде идват. Ето ти и кодовете;
index.php
Код:
<?php 
$server="localhost"; 
$user="root"; 
$pass=""; 
$db="referers"; 

mysql_connect("$server", "$user", "$pass"); 
mysql_select_db("$db"); 

$idva = $_SERVER['HTTP_REFERER']; 
if($idva == "") 
$ip = ip2long($_SERVER['REMOTE_ADDR']); 
$date = date("j.n.Y"); 
$query ="insert into `ref`(`id`, `url` , `ip`, `date` ) values('NULL', '$idva' , '$ip', '$date' )"; 
mysql_query($query); 
?>

index.php върши действието да "гледа" от къде идва потребителя и да записва, дата, ip, и адреса от където идва. Обаче недостатъка, е че когато направо отворят сайта ти, а не идва от друг сайт, няма да въведе "$idva", защото съответно не идва от друга страница и е нормално да го въведе като "нищо".

vlizaniq.php
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>Agent</title> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> 
<link href="style.css" rel="stylesheet" type="text/css"> 
</head> 
<body> 
<center> 
<table class="home" > 
<tr> 
<td colspan="2" width="250"> 
<center>Дата/час</center> 
</td> 
<td width="130px" colspan="1"> 
<center>IP адрес </center> 
</td> 
<td width="130px" colspan="1"> 
<center>Идва </center> 
</td> 
</tr> 
<?php 
$server="localhost"; 
$user="root"; 
$pass=""; 
$db="referers"; 

mysql_connect("$server", "$user", "$pass"); 
mysql_select_db("$db"); 
$sql = mysql_query("SELECT * FROM ref ORDER BY id DESC"); 
while($r = mysql_fetch_assoc($sql)) { 
echo ' 
   <tr> 
     <td class="data" colspan="2"  width="250px" ><center>'.$r[date].'</center> </td> 
     <td width="130px" class="ip"><center>'.$r[ip].'</center> </td> 
     <td width="130px" class="browser"><center><a rel="nofollow" href='.$r[url].' target="_blank">'.$r[url].'</a></center> </td> 
    </tr> 
'; 
} 
?> 
</table> 
<br /> 
Powered by nom3r1 
</body> 
</html>

style.css
Код:
input,textarea { 
border: 1px solid; 
font-family: Verdana, Arial, Helvetica, sans-serif; 
font-size: 10px; 
border-color: #7DA1CA; 
background-color:#FAFCFE; 
color:#3F4B65;} 
a:link{text-decoration: none; color: #11529D;} 
a:visited{text-decoration: none;color:#11529D;} 
a:active {text-decoration: none;color: #7DA1CA;} 
a:hover {text-decoration: none; color: #7DA1CA;} 
body { 
background-color: #ffffff; 
font-family: Verdana, Arial, Helvetica, sans-serif; 
font-size: 11px; 
color : #000000; 
text-align: center; 
scrollbar-face-color: #CEDDFA; 
scrollbar-highlight-color: #E3F0FB; 
scrollbar-shadow-color: #BADBF5; 
scrollbar-3dlight-color: #CEDDFA; 
scrollbar-arrow-color:  #072978; 
scrollbar-track-color: #EDF4FC; 
scrollbar-darkshadow-color: #4B8DF1; 
margin: 0; 
} 
table { 
border-collapse: collapse; 
border: none; 
width:95%;  
} 
table.home{ 
background-color: #EDF4FC; 
} 
td { 
font-size: 8pt; 
border: solid #7DA1CA 1px; 
} 
td.header { 
background-color: #BFDFFF; 
width:800; 
height:10; 
} 
td.nomer { 
border-right-width: 1px; 
border-left-width: 1px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 11px; 
border-color: #7DA1CA; 
border-style: solid; 
color:#3F4B65; 
} 
td.data { 
border-right-width: 0px; 
border-left-width: 0px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 11px; 
border-color: #7DA1CA; 
border-style: solid; 
color:#3F4B65; 
text-align: center; 
width:100; 
} 
td.ip { 
font-weight: bold; 
background-color: #E3EEFB; 
border-right-width: 1px; 
border-left-width: 1px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 11px; 
border-color: #7DA1CA; 
border-style: solid; 
color:#3F4B65; 
text-align: center; 
} 
td.browser { 
border-right-width: 1px; 
border-left-width: 0px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 11px; 
border-color: #7DA1CA; 
border-style: solid; 
color:#3F4B65; 
text-align: center; 
font-weight: ; 
} 
td.data1 { 
border-right-width: 0px; 
border-left-width: 0px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 11px; 
border-color: #7DA1CA; 
border-style: solid; 
color:#3F4B65; 
text-align: center; 
} 
td.page { 
border-right-width: 1px; 
border-left-width: 1px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 11px; 
border-color: #7DA1CA; 
border-style: solid; 
color:#3F4B65; 
text-align: center; 
} 
td.search { 
background-color:#CEE1F7; 
border-right-width: 1px; 
border-left-width: 0px; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 12px; 
text-align: right; 
font-weight: bold; 
height:5; 
} 
td.uni { 
background-color:#CEE1F7; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 12px; 
text-align: center; 
font-weight: bold; 
} 
td.control { 
background-color:#CEE1F7; 
border-bottom-width: 1px; 
border-top-width: 1px; 
font-size: 12px; 
text-align: center; 
font-weight: bold; 
}

Предполагам това ти трябва.

//////////////////////////////////////////////////////////
Другия вариант да му разбереш IP-то е следния;

Правиш си една директория, site.com/betasite/
Със следния index.php;
Код:
<html>
<head>
<title>BetaVersion</title>
</head>
<body>
<?php
    $ip = $_SERVER['REMOTE_ADDR'];
    $date = date("Y m d");
    $h = date("h:i:s A");
    
    $zapis = fopen("log.txt", a);
    fwrite($zapis, "$ip - $date - $h");
    fclose($zapis);
?>
</body>
</html>

И му казваш: "Здрасти.. добре ли е новата версия на сайта ми, който можеш да го видиш тук; site.com/betasite/"

След това, ако се е хванал на въдицата влизаш в site.com/betasite/log.txt и там ще бъде неговото IP и го банирай както искаш.. Кеф ти с .htaccess
Код:
deny from IP

Кеф ти с php код. PHP кода можеш да го намериш в Уеб-Туриста.
 

Back
Горе