collapse

* User Info

 
 
Welcome, Guest. Please login or register.
Did you miss your activation email?

* Who's Online

  • Dot Guests: 221
  • Dot Hidden: 0
  • Dot Users: 0

There aren't any users online.

* Shoutbox

Refresh History
  • Shoutbox is not for support!
  • Chara from Undertale: Since my topic is taking a while to post, can I show my site off here?
    March 30, 2017, 10:00:45 pm
  • ♦ Ninja ZX-10RR ♦: Excuse me but what does Simpleportal have to deal with that?
    February 05, 2017, 08:21:14 pm
  • WhiteEagle: of course IMHO that site appears to be dead :(
    February 04, 2017, 01:08:05 pm
  • WhiteEagle: If I can get that, then I'll use it for that site...
    February 04, 2017, 01:07:35 pm
  • WhiteEagle: decided to not use SMF for any projects, unless I can get a copy of the premium version of the fanfiction archive plugin
    February 04, 2017, 01:06:54 pm
  • expertdecisions: cloudflare
    January 28, 2017, 08:01:47 am
  • aegersz: SM release 2.0.13 !
    January 12, 2017, 06:00:13 am
  • raffo: Tks Emanuele, even if I didn't understand the fix :D
    November 07, 2016, 02:01:20 am
  • emanuele: [link]
    November 01, 2016, 12:43:50 pm
  • emanuele: raffo: the English support board is a good place. ;)
    November 01, 2016, 12:43:38 pm
  • raffo: Where can I find the fix for the shoutbox?
    November 01, 2016, 05:06:09 am
  • [DFg]DJF-1975: To the SP team, I make a point to come here and thank you as much as possible for your work.  so again, THANK YOU!
    October 28, 2016, 10:38:05 am
  • emanuele: That's indeed funny, the limit is present only in the patch and not the full install.
    October 22, 2016, 06:14:58 pm
  • phantomm: and from what I see only patch is broken, full install package is fine
    October 21, 2016, 03:44:44 pm
  • phantomm: they say it for over 3 weeks now..
    October 21, 2016, 03:43:52 pm
  • aegersz: SMF say that bug fix 2.0.13 is coming soon ...
    October 19, 2016, 06:46:12 pm
  • Chen Zhen: check that thread at a later date as that file is not a final fix
    October 10, 2016, 03:09:18 pm
  • [DFg]DJF-1975: Thanks for the shoutbox fix file!
    October 10, 2016, 09:17:19 am
  • * Burke Knight Lurks
    October 02, 2016, 09:17:45 pm
Blocks speak! Do you have an interest in getting more blocks - or even making your own? The Blocks Board is for you!

Author Topic: add adscaptcha in bloks or pages  (Read 1813 times)

0 Members and 1 Guest are viewing this topic.

Offline iulyz

  • Newbie
  • Posts: 4
add adscaptcha in bloks or pages
« on: December 21, 2011, 06:28:09 pm »
How do i make this code work in a block or page?
I try to add this code via php custom block but do not working... appear only button from form.
Can some one help me with this please. :'(

Code: [Select]
$ADSCAPTCHA_API = 'api.adscaptcha.com';

function GetCaptcha($captchaId, $publicKey) {
global $ADSCAPTCHA_API;

$dummy = rand(1, 9999999999);
$urlGet = 'http://' . $ADSCAPTCHA_API . "/Get.aspx";
$urlNoScript = 'http://' . $ADSCAPTCHA_API . "/NoScript.aspx";
$params = "?CaptchaId="  . $captchaId .
  "&PublicKey=" . $publicKey .
  "&Dummy=" . $dummy;

$result  = "<script src='" . $urlGet . $params . "' type='text/javascript'></script>\n";
$result .= "<noscript>\n";
$result .= "\t<iframe src='" . $urlNoScript . $params . "' width='300' height='100' frameborder='0'></iframe>\n";
$result .= "\t<table>\n";
$result .= "\t<tr><td>Type challenge here:</td><td><input type='text' name='adscaptcha_response_field' value='' /></td></tr>\n";
$result .= "\t<tr><td>Paste code here:</td><td><input type='text' name='adscaptcha_challenge_field' value='' /></td></tr>\n";
$result .= "\t</table>\n";
$result .= "</noscript>\n";

return $result;
}

function ValidateCaptcha($captchaId, $privateKey, $challengeValue, $responseValue, $remoteAddress) {
global $ADSCAPTCHA_API;

$host = $ADSCAPTCHA_API;
$path = "/Validate.aspx";

$params = "CaptchaId=" . $captchaId . "&PrivateKey=" . $privateKey . "&ChallengeCode=" . $challengeValue . "&UserResponse=" . $responseValue . "&RemoteAddress=" . $remoteAddress;

$result = HttpPost($host, $path, $params);

return $result;
}

function FixEncoding($str) {
$curr_encoding = mb_detect_encoding($str) ;

if($curr_encoding == "UTF-8" && mb_check_encoding($str,"UTF-8")) {
return $str;
} else {
return utf8_encode($str);
}
}

function HttpPost($host, $path, $data, $port = 80) {
$data = FixEncoding($data);

$http_request  = "POST $path HTTP/1.0\r\n";
$http_request .= "Host: $host\r\n";
$http_request .= "Content-Type: application/x-www-form-urlencoded\r\n";
$http_request .= "Content-Length: " . strlen($data) . "\r\n";
$http_request .= "\r\n";
$http_request .= $data;

$response = '';
if (($fs = @fsockopen($host, $port, $errno, $errstr, 10)) == false) {
die ('Could not open socket! ' . $errstr);
}

fwrite($fs, $http_request);

while (!feof($fs))
$response .= fgets($fs, 1160);
fclose($fs);

$response = explode("\r\n\r\n", $response, 2);
return $response[1];
}


echo '<form action="" method="post">';

$captchaId  = '';   // Set your captcha id here
$publicKey  = '';   // Set your public key here
$privateKey = '';   // Set your private key here
$challengeValue = $_POST['adscaptcha_challenge_field'];
$responseValue  = $_POST['adscaptcha_response_field'];
$remoteAddress  = $_SERVER["REMOTE_ADDR"];

if ($challengeValue == null) {
echo GetCaptcha($captchaId, $publicKey);

echo '<input type="submit" id="submit" name="submit" />';

} else {
if (ValidateCaptcha($captchaId, $privateKey, $challengeValue, $responseValue, $remoteAddress) == "true")
{
echo "Correct :)";
// Corrent answer, continue with your submission process
} else {
echo "Wrong :(";
// Wrong answer, you may display a new AdsCaptcha and add an error message
}
}

echo '</form>';