FluxBB.fr

Le site des utilisateurs francophones de FluxBB.

Vous n'êtes pas identifié(e).

#1 18-09-2012 10:27:00

Mikado
Membre
Lieu : Cugnaux
Inscription : 28-03-2006
Messages : 75
Site Web

[Résolu] CheckIfSpambot

Depuis que j'utilise CheckIfSpambot, je n'ai plus aucune inscription.
J'ai testé avec un inscrit bidon dont l'username, l'email et l'adresse IP ont été vérifiés dans http://www.stopforumspam.com/search. J'obtiens le fameux message "Vous êtes un bot".
Que faire?

Hors ligne

#2 19-09-2012 15:31:02

Tiberius78
Membre
Inscription : 19-08-2012
Messages : 12

Re : [Résolu] CheckIfSpambot

Comme je l'ai indiqué dans l'autre fil de discussion, visiblement ça coince avec les pseudos trop fréquents.

Essaye de vérifier ton pseudo avec http://www.stopforumspam.com/api?username=tonpseudo. si ça te réponds username yes, c'est que le pseudo est refusé et ça bloquera ton inscription (c'est le cas si tu fais http://www.stopforumspam.com/api?username=mikado ...)

Hors ligne

#3 19-09-2012 18:25:48

adaur
Membre
Lieu : Derrière Notepad ++ !
Inscription : 25-09-2008
Messages : 1 937
Site Web

Re : [Résolu] CheckIfSpambot

Si cela vient en effet du pseudo, tu pourrais ne garder que le check de l'e-mail et de l'IP:

function CheckIfSpambot($emailAddress, $ipAddress, $userName, $debug = false)
{
 
// *********************************
// Code originally written by Smurf_Minions (http://guildwarsholland.nl/)
// Original Source: http://guildwarsholland.nl/phphulp/testspambot.php
//
// Modified by Brendan Erskine (http://sysadminspot.com/)
// Last Modified: 8 May 2010
// Revision Number: 2.0
// *********************************
 
  // Initiate and declare spambot/errorDetected as false - as we're just getting started
  $spambot = false;
  $errorDetected = false;
 
  // -------------
  // Check email address
  // -------------
 
  if ($emailAddress != "")
  {
    $xml_string = file_get_contents("http://www.stopforumspam.com/api?email=" . urlencode($emailAddress));
    $xml = new SimpleXMLElement($xml_string);
 
    if ($xml->appears == "yes") // Was the result was registered
    {
      $spambot = true; // Check failed. Result indicates dangerous.
    }
    elseif ($xml->appears == "no") // Check passed. Result returned safe.
    {
      $spambot = false; // Check passed. Result returned safe.
    }
    else
    {
      $errorDetected = true; // Test returned neither positive or negative result. Service might be down?
    }
  }
 
  // -------------
  // Check IP Address
  // -------------
  if ($spambot != true && $ipAddress != "")
  {
    $xml_string = file_get_contents("http://www.stopforumspam.com/api?ip=" . urlencode($ipAddress));
    $xml = new SimpleXMLElement($xml_string);
 
    if ($xml->appears == "yes") // Was the result was registered
    {
      $spambot = true; // Check failed. Result indicates dangerous.
    }
    elseif ($xml->appears == "no") // Check passed. Result returned safe.
    {
      $spambot = false; // Check passed. Result returned safe.
    }
    else
    {
      $errorDetected = true; // Test returned neither positive or negative result. Service might be down?
    }
  }
 
  // -------------
  // Check Username - deleted
  // -------------
  /*
  if ($spambot != true && $userName != "")
  {
    $xml_string = file_get_contents("http://www.stopforumspam.com/api?username=" . urlencode($userName));
    $xml = new SimpleXMLElement($xml_string);
 
    if ($xml->appears == "yes") // Was the result was registered
    {
      $spambot = true; // Check failed. Result indicates dangerous.
    }
    elseif ($xml->appears == "no") // Check passed. Result returned safe.
    {
      $spambot = false; // Check passed. Result returned safe.
    }
    else
    {
      $errorDetected = true; // Test returned neither positive or negative result. Service might be down?
    }
  }
  */
 
  // To debug function, call it with the debug flag as true and instead the function will return whether or not an error was detected, rather than the test result.
  if ($debug == true)
  {
    return $errorDetected; // If enabled, return whether or not an error was detected
  }
  else
  {
    return $spambot; // Return test results as either true/false or 1/0
  }
}

"As code is more often read than written it's really important to write clean code." - Franz
Twitter: @adaurfr
Mon fork de FluxBB: FeatherBB

Hors ligne

#4 19-09-2012 20:46:40

Mikado
Membre
Lieu : Cugnaux
Inscription : 28-03-2006
Messages : 75
Site Web

Re : [Résolu] CheckIfSpambot

Merci pour votre aide!

Dernière modification par Mikado (19-09-2012 22:51:52)

Hors ligne

Pied de page des forums