Mencegah Sql Injection dengan PHP
Tentu kita tidak ingin website yang kita miliki dengan mudah di masuki dan di obrak abrik oleh pihak tidak bertanggung jawab ,Kali ini saya akan share bagaimana cara mencegah Website PHP dari serangan Sql injection ,
Langsung saja kita , bagaimana cara Mencegah dari Serangan SQL injection
Pada artikel sebelumnya admin sudah menulis, bagaimana salah satu cara untuk mencegah dari serangan sql injection, artikel Membuat Fungsi Validasi Form dengan PHP , silahkan di baca ya, dan sekarang kita akan menambah lagi ,
Validasi untuk Form dari Sql Injection
Nah Sekarang Kita bagi berdasarkan MEthod yang digunakan
Integer values:
// To SANITIZE Integer value use
$var=(filter_var($var, FILTER_SANITIZE_NUMBER_INT));
//example:
$theNumber="983928/2ddo@3233'0 or 1 '%^33)_23@''''$9123!@~#";
$theNumber=(filter_var($theNumber, FILTER_SANITIZE_NUMBER_INT));
echo $theNumber;
//cleaned out put will be: 983928232330133239123
Email values:
//To SANITIZE email query value use
$var=(filter_var($var, FILTER_SANITIZE_EMAIL));
//example:
$theEmail="warith@d\igi7/7.com";
$theEmail=(filter_var($theEmail, FILTER_SANITIZE_EMAIL));
echo $theEmail;
//cleaned out put will be: warith@digi77.com;
String values:
//To SANITIZE String value use
function StringInputCleaner($data)
{
//remove space bfore and after
$data = trim($data);
//remove slashes
$data = stripslashes($data);
$data=(filter_var($data, FILTER_SANITIZE_STRING));
return $data;
}
//example:
$myString="Welcome <script> alert('\Hi digi77.com')</script> here"; ;
$myString=StringInputCleaner($myString);
echo $myString;
//cleaned out put will be: Welcome alert('Hi digi77.com') here
Sql statments:
//To SANITIZE Sql query value use
function mysqlCleaner($data)
{
$data= mysql_real_escape_string($data);
$data= stripslashes($data);
return $data;
//or in one line code
//return(stripslashes(mysql_real_escape_string($data)));
}
//example:
$insert="delete from vbtube_tubes WHERE tubeid =$row5[0]";
$insert= mysqlCleaner($insert);
mysql_query($insert);
Fungsi Lengkap Untuk Mencegah SQL injection
function validate_data($data)
{
include koneksi.php
$data = trim($data);
$data = stripslashes($data);
$data = strip_tags($data);
$data = htmlspecialchars($data);
$data = mysqli_real_escape_string($koneksi, $data);
return $data;
}
//contoh penggunaan
$name = validate_data( $_POST['username'] );
$emailid = validate_data( $_POST['useremail'] );
$password = validate_data( $_POST['user_password'] );
METHOD GET
UNTUK METHOD GET GUNAKAN
$id= abs((int) $_GET['id']);