Posts Tagged protect

TIProtector

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

, , , , , ,

9 Comments

Protect Content Function

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 '

'.$html.'

';
else
return $html;
}
}

, , , ,

Leave a comment

Spammers

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

, , , , ,

Leave a comment

Design a site like this with WordPress.com
Get started