hexasoft icon

Credit Card Fraud Prevention Using PHP and MySQL for IPV4

hexasoft | PRO | 05/16/18 07:36:05 AM UTC | 0 ⭐ | 263 👁️ | Never ⏰ | []
PHP |

3.16 KB

|

None

|

0 👍

/

0 👎

/****************************************************************************************************************/
/* Description: This snippet is provide simple way to help user Credit Card Fraud Prevention                    */
/*              suggestions for different city locations across the country.                                    */
/*              There are 1 steps in this snippet. For information, please visit IP2Location tutorial page at:  */
/*https://www.ip2location.com/tutorials/credit-card-fraud-prevention-using-php-and-mysql-database               */
/****************************************************************************************************************/
/* You can obtain free IP Country database for IPv4 at https://lite.ip2location.com/database/ip-country         */
/* You can obtain free country information data at https://www.ip2location.com/free/country-information         */
 
<?php
        // country in billing address, in this example, we assigned "US" for United States.
        $billingCountrySHORT = "US";
 
        // Replace this MYSQL server variables with actual configuration
        $mysql_server = "localhost";
        $mysql_user_name = "root";
        $mysql_user_pass = "";
 
        // Retrieve visitor IP address from server variable REMOTE_ADDR
        $ipaddress = $_SERVER['REMOTE_ADDR'];
 
        // Convert IP address to IP number for querying database
        $ipno = Dot2LongIP($ipaddress);
 
        // Connect to the database server
        $link = mysqli_connect($mysql_server, $mysql_user_name, $mysql_user_pass) or die("Could not connect to MySQL database");
 
        // Connect to the IP2Location database
        mysqli_select_db($link,"ip2location") or die("Could not select database");
 
        // SQL query string to match the recordset that the IP number fall between the valid range
        $query = "SELECT * FROM ip_country WHERE $ipno <= ip_to LIMIT 1";
               
        // Execute SQL query
        $result = mysqli_query($link,$query) or die("IP2Location Query Failed");
 
        // Retrieve the recordset (only one)
        $row = mysqli_fetch_assoc($result);
           
        // Keep the country information into two different variables
        $country_code = $row['country_code'];
        $country_name = $row['country_name'];
         
 
        // Free recordset and close database connection
        mysqli_free_result($result); 
        mysqli_close($link);
 
         if ($country_code == $billingCountrySHORT) {
            // IP address same as country in billing address: Low Fraud Risk
            echo "Low Frauk Risk ";
          } else {                
            // IP address different from country in billing address: High Fraud Risk
            echo"High Fraud risk";
          }
 
        exit;
 
        // Function to convert IP address (xxx.xxx.xxx.xxx) to IP number (0 to 256^4-1)
        function Dot2LongIP ($IPaddr)
        {
          if ($IPaddr == "") {
          return 0;
        } else {
        $ips = explode(".", "$IPaddr");
        return ($ips[3] + $ips[2] * 256 + $ips[1] * 256 * 256 + $ips[0] * 256 * 256 * 256);
         }
        }
?>

Comments