Posts Tagged protect
TIProtector
Posted by Im a programmer in PHP, wordpress on 07/01/2011
In following of the last post…
After finishing protect_content function I thought I can use it in wp too
So I tried to learn how to make a plugin for wordpress
At the beginning it was really hard but after an hour I got used to it And i finished writing a simple plugin in 5 hours(lots of time XD)
Download the plugin HERE
I hope you enjoy it
Have a good day
Protect Content Function
Posted by Im a programmer in PHP on 07/01/2011
Hi everyone
Last night I wrote a function to protect content of my site
For whoever has a site and wants to use my function here is the function
* I used simple_html_dom class in this function, you can download it here Simple html DOM
function protect_images($text, $protect_images = true, $protect_text = true){
require("simple_html_dom.php");
$html = str_get_html($text);
$image_original = array();
$image_protected = array();
if ($protect_images)
foreach($html->find('img') as $element){
$src = $element->src;
$width = $element->width;
$width_p = $width + 2;
$height = $element->height;
$height_p = $height + 2;
$element->outertext = '
';
}
if ($protect_text)
return '
';
else
return $html;
}
}
Spammers
Posted by Im a programmer in MySql, PHP on 02/10/2010
Hello everyone!
Today I had a little problem with a spammer.
He was requesting a page like 3 o 4 times per second.
And I found about it after one of my tables(stats) got overloaded by data so I contacted my host (The host I’m using is really good and fast and has a really good support, thanks ipage) and they restored my database.
First I emptied stats table and then blocked the spammer’s ip with .htaccess.
Then I thought about preventing spammers accessing my site too fast.
So I wrote this piece of code.
I know It’s really simple but I guess it gives the idea to some newbies like me.
For the table:
CREATE TABLE `Ips` (
`ip` varchar(15) NOT NULL,
`accessTime` int(11) NOT NULL,
`accessPage` varchar(10) NOT NULL
)
And at the header of you site:
$ip=$_SERVER[‘REMOTE_ADDR’];
$con = mysql_connect(“localhost”,”user”,”pass”);
if (!$con)
{
die(‘Could not connect: ‘ . mysql_error());
}
mysql_select_db(“your_db”, $con);
$max=2;
$interval=3; //these two parameters mean that the a user can access your site maximum 2 times in 3 seconds
$timeLow = time()-$interval;
$timeNow = time();
$accessNum=mysql_query(“SELECT * FROM Ips WHERE accessTime > ‘$timeLow’ AND ip=’$ip'”);
if(mysql_num_rows($accessNum) > 2){
mysql_query(“INSERT INTO Ips (ip,accessTime,accessPage) VALUES (‘$ip’,0,’$accessPage’)”);//I used this to check know who accessed my site too fast(just with searching the table for accessTime=0
mysql_close($con);
die(‘You are accessing this site too fast’);
}
$accessPage=substr($_SERVER[“SCRIPT_NAME”],strrpos($_SERVER[“SCRIPT_NAME”],”/”)+1);
mysql_query(“INSERT INTO Ips (ip,accessTime,accessPage) VALUES (‘$ip’,’$timeNow’,’$accessPage’)”);
mysql_close($con);
Well you can add more columns to database for more details(like date).
I hope this article be a little help for you:D

