How to check if IP adress is spammer [PHP]

We will check how to get information about IP using stopforumspam.com API. This can help stop harmfull servers do harm to your website.

  1. Add this code to your your PHP application, where you will check for spammers:
$ipadresstocheck = '198.40.54.178';
$get = file_get_contents('https://www.stopforumspam.com/api?ip='.$ipadresstocheck.'&confidence');
$arr = simplexml_load_string($get);
$ipappearsinspamdatabase = $arr->appears;
$lastseeninspamdatabase = $arr->lastseen;
$sfsconfidence = $arr->confidence;
  • Use $ipappearsinspammersdatabase¬†variable to check if IP adress appears in stopforumspam.com database.
  • Use $lastseeninspamdatabase variable to check when ip adress is last seen in database.
  • Use $sfsconfidence to get confidence scoring. Confidence scoring is statistically calculated score, based on the last seen date and the number of sightings.

More information about stopforumspam.com API usage.

How to add captcha to website [PHP]

  1. Connect to your server using FTP software.
  2. Use this submit form where you want captcha to appear on your website:
session_start();
//run the code only if the form has been submitted
if(isset($_POST['submit'])){

if($_SESSION["captcha"]!==$_POST["captcha"])
{
echo 'Characters do not match the black characters on the image.';
} else {
echo 'Matched';
}
}

echo '<form action="" method="post">
<p>Only enter the 3 <b>black</b> characters:</p>
<p><img src="captcha.php" alt="captcha image" id="captcha"><a href="#" onclick="document.getElementById(\'captcha\').src = \'captcha.php?\' + Math.random(); return false">Reload Image</a><br /><input type="text" id="captcha" name="captcha" size="3" maxlength="3"></p>
<p><input type="submit" name="submit" value="Submit" />
</form>';
  1. Create new file named captcha.php and add this code:
<?php
session_start();
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
header("Cache-Control: no-store, no-cache, must-revalidate"); 
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");

function _generateRandom($length=6)
{
$_rand_src = array(
array(48,57) //digits
, array(97,122) //lowercase chars
// , array(65,90) //uppercase chars
);
srand ((double) microtime() * 1000000);
$random_string = "";
for($i=0;$i<$length;$i++){
$i1=rand(0,sizeof($_rand_src)-1);
$random_string .= chr(rand($_rand_src[$i1][0],$_rand_src[$i1][1]));
}
return $random_string;
}

$im = @imagecreatefromjpeg("captcha.jpg"); 
$rand = _generateRandom(3);
$_SESSION['captcha'] = $rand;
ImageString($im, 9, 2, 2, $rand[0]." ".$rand[1]." ".$rand[2]." ", ImageColorAllocate ($im, 0, 0, 0));
$rand = _generateRandom(3);
ImageString($im, 9, 2, 2, " ".$rand[0]." ".$rand[1]." ".$rand[2], ImageColorAllocate ($im, 255, 0, 0));
Header ('Content-type: image/jpeg');
imagejpeg($im,NULL,100);
ImageDestroy($im);
?>
  1. Save this image (named captcha.jpg) in the same directory as the captcha.php file.

Source https://daveismyname.blog/categories/seo