Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- # vim: set sw=4:
- $SERVER = "localhost";
- $USER = "user";
- $PASSWORD = "password";
- $DATABASE = "ip_cimek";
- $TABLE_NAME="ban";
- $TABLE_COLUMNS= array ( "ip_cim" => "ip", "probalkozasok" => "attempts", "egyedi_szam" => "id", "bannolt_datum" => "datetime" );
- function getIP ( )
- {
- $ip = $_SERVER['REMOTE_ADDR'];
- if ( filter_var ( $ip, FILTER_VALIDATE_IP ) )
- {
- return $ip;
- }
- else
- {
- die ( "INVALID_IP" );
- }
- }
- function compareDate ( $start, $end )
- {
- $totalDays = floor ( ( $start-$end )/86400 );
- return $totalDays;
- }
- function addIP ( $ip ) # Hozzaadja, vagy ha hozza van adva, akkor noveli a probalkozasokat
- {
- global $SERVER, $USER, $PASSWORD, $DATABASE, $TABLE_COLUMNS, $TABLE_NAME;
- $mysql_connection = mysql_connect ( $SERVER, $USER, $PASSWORD );
- if ( !$mysql_connection )
- {
- die ( "Could not connect" . mysql_error ( ) );
- }
- mysql_select_db ( $DATABASE, $mysql_connection );
- $mysql_querry = mysql_query ( "SELECT * FROM " . $TABLE_NAME . " WHERE " . $TABLE_COLUMNS['ip_cim'] . " = " . ip2long ( $ip ) . ";" ) or die ( mysql_error ( ) );
- while ( $mysql_column = mysql_fetch_array ( $mysql_querry ) ) # Hozza van adva
- {
- if ( $mysql_column[$TABLE_COLUMNS["probalkozasok"]] < 3 ) # Noveli a probalkozasokat
- {
- $attempts = $mysql_column[$TABLE_COLUMNS["probalkozasok"]];
- $attempts++;
- mysql_query ( "UPDATE " . $TABLE_NAME . " SET " . $TABLE_COLUMNS["probalkozasok"] . " = '" . $attempts ."' WHERE " . $TABLE_COLUMNS["egyedi_szam"] . " = " . $mysql_column[$TABLE_COLUMNS["egyedi_szam"]] ) or die ( mysql_error ( ) ); # increase attempts field
- }
- return 0;
- }
- $mysql_querry = mysql_query ( "INSERT INTO " . $TABLE_NAME . "(" . $TABLE_COLUMNS["ip_cim"] . "," . $TABLE_COLUMNS["probalkozasok"] . "," . $TABLE_COLUMNS["bannolt_datum"] . ") VALUES (" . ip2long ( $ip ) . ", 1, " . strtotime ( "now" ) . ")" ) or die ( mysql_error ( ) );
- mysql_close ( $mysql_connection );
- return 0;
- }
- function removeIP ( $ip )
- {
- global $SERVER, $USER, $PASSWORD, $DATABASE, $TABLE_COLUMNS, $TABLE_NAME;
- $mysql_connection = mysql_connect ( $SERVER, $USER, $PASSWORD );
- if ( !$mysql_connection )
- {
- die ( "Could not connect" . mysql_error ( ) );
- }
- mysql_select_db ( $DATABASE, $mysql_connection );
- $mysql_querry = mysql_query ( "SELECT * FROM " . $TABLE_NAME . " WHERE " . $TABLE_COLUMNS["ip_cim"] . " = " . ip2long ( $ip ) ) or die ( mysql_error ( ) );
- while ( $mysql_column = mysql_fetch_array ( $mysql_querry ) )
- {
- mysql_query ( "DELETE FROM " . $TABLE_NAME . " WHERE " . $TABLE_COLUMNS["egyedi_szam"] . " = " . $mysql_column[$TABLE_COLUMNS["egyedi_szam"]] ) or die ( mysql_error ( ) );
- }
- mysql_close ( $mysql_connection );
- return 0;
- }
- function checkIP ( $ip ) # Leellenorzi hogy bejelentkezhet e a user
- {
- global $SERVER, $USER, $PASSWORD, $DATABASE, $TABLE_COLUMNS, $TABLE_NAME;
- $ip_checked = false;
- $mysql_connection = mysql_connect ( $SERVER, $USER, $PASSWORD );
- if ( !$mysql_connection )
- {
- die ( "Could not connect" . mysql_error ( ) );
- }
- mysql_select_db ( $DATABASE, $mysql_connection );
- $mysql_querry = mysql_query ( "SELECT * FROM " . $TABLE_NAME . " WHERE " . $TABLE_COLUMNS['ip_cim'] . " = " . ip2long ( $ip ) ) or die ( mysql_error ( ) );
- while ( $mysql_column = mysql_fetch_array ( $mysql_querry ) )
- {
- if ( $ip_checked == false )
- {
- $ip_checked = true;
- if ( $mysql_column[$TABLE_COLUMNS["probalkozasok"]] >= 3 )
- {
- # Elmult e mar 3 nap
- $php_date = $mysql_column[$TABLE_COLUMNS["bannolt_datum"]];
- if ( compareDate ( strtotime ( "now" ), $php_date ) > 3 )
- {
- # Elmult a 3 nap, ki lehet torolni a cimet
- mysql_query ( "DELETE FROM " . $TABLE_NAME . " WHERE " . $TABLE_COLUMNS["egyedi_szam"] . " = " . $mysql_column[$TABLE_COLUMNS["egyedi_szam"]] ) or die ( mysql_error ( ) );
- return 0;
- mysql_close ( $mysql_connection );
- }
- else
- {
- # Nem mult el a 3 nap
- mysql_close ( $mysql_connection );
- return 1;
- }
- }
- }
- else
- {
- # Ha ide el jut akkor azok duplikatumok, altalaban nem szokott ide eljutni
- mysql_query ( "DELETE FROM " . $TABLE_NAME . " WHERE " . $TABLE_COLUMNS["egyedi_szam"] . " = " . $mysql_column[$TABLE_COLUMNS["egyedi_szam"]] ) or die ( mysql_error ( ) );
- }
- }
- mysql_close ( $mysql_connection );
- return 0;
- }
- # Made by kovirobi@gmail.com, feel free to use
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement