как да защита тоя логин скрипт от Sql инжекция

  • Автор Автор Kdo
  • Начална дата Начална дата

Kdo

Registered
Код:
 <?php
ob_start();
include "connect.php";
$db_conn = mysql_connect("$host", "$dbusername", "$dbpassword")
or die("unable to connect to the database");
mysql_select_db("$db", $db_conn) or die("unable to select the database");
$username=$_POST['username'];
$password=$_POST['password'];
$sql="SELECT * FROM users WHERE username='$username' and password='$password'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1)
{
session_register("username");
session_register("password");
header("location:pro.php");
}
else
{
echo "Username Or Password Is Inccorect";
}
ob_end_flush();
?>

моля помогнете
как да защита тоя логин скрипт от Sql инжекция
 
четох го но не разбрах нищо можете ли вие да ми го направите
 
Значи правиш си такъв файл

zashtita.php
Код:
<?php 
function za6titi($tekst) 
{ 
if ( (int)$tekst ) 
return $tekst; 
else 
{ 
$tekst = addslashes($tekst); 
$tekst = htmlspecialchars($tekst, ENT_NOQUOTES); 

return $tekst; 
} 
} 

$_GET = array_map("za6titi", $_GET); 
$_POST = array_map("za6titi", $_POST); 
$_SESSION = array_map("za6titi", $_SESSION); 
$_COOKIE = array_map("za6titi", $_COOKIE); 
$_SERVER = array_map("za6titi", $_SERVER); 
?>

И на всяка страница слагаш include "zashtita.php";

По този начин страниците ще са ти защитени от инжекции
 
Какво не можеш да разбереш? Не можеш да разбереш, че трябва да сложиш това в някакъв файл и после да инклуудваш файла във всеки скрипт?

Код:
<?php
function za6titi($tekst)
{
if ( (int)$tekst or is_array($tekst) )
return $tekst;
else
{
$tekst = addslashes($tekst);
$tekst = htmlspecialchars($tekst, ENT_NOQUOTES);

return $tekst;
}
}

$_GET = array_map("za6titi", $_GET);
$_POST = array_map("za6titi", $_POST);
@$_SESSION = array_map("za6titi", $_SESSION);
@$_COOKIE = array_map("za6titi", $_COOKIE);
$_SERVER = array_map("za6titi", $_SERVER);
?>
 
Незнам дали си забелязал , но в темата става въпрос за sql инжекции , не за mysql injection
 

Back
Горе