sesusera adlı üyeden alıntı: mesajı görüntüle
@theykk;
Size çok basit bir taktik vereceğim böyle her veriyi tek tek escape etmenize gerek yok kendinizi yormayın , PHP pratik ve esnek bir programlama dilidir.

Ek olarak ezSQL ( https://github.com/ezSQL/ezSQL ) kullanabilirsiniz
// Sistemin başlangıçına konulması gerekir
// bunun yukarısında her hangi bir $_GET veya $_POST superglobali kullanılmaması gerekmekte.
function clean($data = array())
{
    if( is_array($data) )
    {
        $data = array_map('clean' , $data);
    }
    else
    {
        $data = htmlspecialchars( $data );
        $data = urldecode( $data );
        // sunucuda magic quotes gpc aktif ise slash eklemez değilse ekler.
        $data = get_magic_quotes_gpc() ? $data : addslashes( $data );
    }
    return $data;
}


// Dışarıdan gelen tüm GET / POST methodlarını filtrelemiş olduk.
// bu şekilde XSS ve SQL INJECTION önlemini aldık.
$_GET  = clean( $_GET );
$_POST = clean( $_POST );

// Örnek Sorgu
mysql_query("INSERT INTO table SET column = '{$_GET['value']}'");

// Değişken için kullanımı
$zararliveri = "Merhaba ' ";
mysql_query("INSERT INTO table SET column = '".clean($zararliveri)."' ");
HTML kullanmak istediğinizde ise html kodlarını çalıştırmak için ;
function decode_html( $html )
{
        // zararlı kodlar strip_tags ile filtrelenebilir.
    return htmlspecialchars_decode( $html );
}
clean() fonksiyonu tam olarak güvenli sayılmaz..sen istediğin get ,post, session geçir bu fonksiyondan bunun haricinde herhangi bir şey yapma yine de geçilir.