Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> SQL Injection
tamin
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 6.09.2003

Ostrzeżenie: (0%)
-----


Chcialbym sie dowiedziec jak najlepiej sie zabezpieczyc przed 'atakami' SQL Injection.
mam powiedzmy takie zapytanie do bazy mysql:

[sql:1:d1814ccdee]
select * from news WHERE nr = '$show'
[/sql:1:d1814ccdee]
I czy to wystarcza. Bo spotykalem sie z:

Kod
$show=intval($show);

select * from news WHERE nr = '$show'


Dla mnie to jest niepotrzebne bo po 'testach' ktore przeprowadzilem moge powiedziec ze uzycje intval jest niepotrzebne bo w zapytaniu sql sa ' '.

Wiec potrzebne czy niepotrzebne, a jak np. $show to ma byc tekst a nie liczba to czy wystarcza '' czy trzeba jeszcze robic addslashes() itp.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Manful
post
Post #2





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 26.11.2003

Ostrzeżenie: (0%)
-----


Co musze poprawić dodać aby ta funkcja była uniwersalna (powiedzmy (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) i mógł ją używać do wsyzstkich danych z POST

Mam do wrzucania do bazy danych dużo pól tekstowych.


[php:1:fbcaa27055]<?php
function czysc($czysc) {
$czysc = mysql_escape_string($czysc);
$czysc = stripslashes(trim($czysc));
$czysc = nl2br($czysc);
return $czysc;
}
$kod= czysc($_POST["kod"]);
...
...

$klery= "INSERT INTO dziadek VALUES (0,"".$kod.""";
$rezultat= mysql_query($klery) or die(mysql_error());
?>[/php:1:fbcaa27055]
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 10:21