Lord Smaug
Stie Tot
Pentru @innogames and @Stil , ca sa se rezolve problema cu bot-ul facut de conturi, cea mai simpla rezolvare e adaugarea de reCaptcha de la google, pe pagina de
grepolis./xyz/
Adauga:
Inlocuieste "site-key-from-google" cu codul captcha primit la pasul I.
2. In head/body adauga ->
3. In .css ->
Ruleaza pana la final de fisier, da enter si copy paste la urmatorul:
4. Transforma submit button-ul din:
in->
5. Adauga in "<script></script>"/.js:
6. Adauga functia urmatoare in .js:
7. In action-ul din btn adauga, inainte de executarea query-ului in db:
Link pentru testat bot-ul dupa aplicarea fix-ului:
#eul-amcreateuildistrug
grepolis./xyz/
Tutorial:
I. Intra pe "https://www.google.com/recaptcha/admin"
Inregistreaza website-ul(grepolis./xyz/) pentru captcha
Sub ->I. Intra pe "https://www.google.com/recaptcha/admin"
Inregistreaza website-ul(grepolis./xyz/) pentru captcha
HTML:
<label for="registration_acceptTerms" class="terms-text"><span>Accept <a href="http://legal.innogames.com/grepo/ro/agb" target="_blank">Termenii și condițiile</a>.</span> <br> <span>Politica noastră de confidențialitate se găsește <a href="http://legal.innogames.com/grepo/ro/privacy" target="_blank">aici</a>.</span></label>
<!---->
</div>
<!---->
Adauga:
HTML:
<div class="g-recaptcha" data-callback="recaptchaCallback" data-sitekey="site-key-from-google"></div>
<input type="submit" value="Submit" class="captchagrepo" />
Inlocuieste "site-key-from-google" cu codul captcha primit la pasul I.
2. In head/body adauga ->
HTML:
<script src='https://www.google.com/recaptcha/api.js'></script>
3. In .css ->
Ruleaza pana la final de fisier, da enter si copy paste la urmatorul:
CSS:
.captchagrepo {
border: 1px solid #3366FF;
background-color: #B3C6FF;
width:150px;
height:30px;
}
4. Transforma submit button-ul din:
HTML:
<button type="submit" id="registration_register" name="registration[register]" class="btn-calltoaction">Joacă acum</button>
in->
HTML:
<button type="submit" id="registration_register" name="registration[register]" class="btn-calltoaction" disabled>Joacă acum</button>
5. Adauga in "<script></script>"/.js:
JavaScript:
function recaptchaCallback() {
$('registration_register').removeAttr('disabled');
};
6. Adauga functia urmatoare in .js:
JavaScript:
function isValid()
{
try {
$url = 'https://www.google.com/recaptcha/api/siteverify';
$data = ['secret' => 'site-key-from-google',
'response' => $_POST['g-recaptcha-response'],
'remoteip' => $_SERVER['REMOTE_ADDR']];
$options = [
'http' => [
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data)
]
];
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
return json_decode($result)->success;
}
catch (Exception $e) {
return null;
}
}
7. In action-ul din btn adauga, inainte de executarea query-ului in db:
JavaScript:
if (isValid())
{
query-ul de introducere a datelor in db
}
else
{
false;
}
Link pentru testat bot-ul dupa aplicarea fix-ului:
Ultima editare: