Merhaba,
Basit bir login sayfası hazırladım, aşağıdaki şekilde
session_start();
ob_start();
$kullanici_adi = htmlentities(mysql_real_escape_string($_POST["kullanici_adi"]));
$parola = md5(mysql_real_escape_string($_POST["parola"]));
$sorgula = mysql_query("SELECT * FROM xxx WHERE yyy='$kullanici_adi' and parola='$parola'") or die (mysql_error());
$uye_varmi = mysql_num_rows($sorgula);
if($uye_varmi > 0)
{
$_SESSION["giris"] = "true";
$_SESSION["kullanici_adi"] = $kullanici_adi;
$_SESSION["parola"] = $parola;
setcookie("kullanici_adi",$kullanici_adi,time()+60*60*24);
setcookie("parola",$parola,time()+60*60*24);
.
.
.
.
.kullanıcı adında türkçe karakter yoksa sorun yok ama kullanıcı adında türkçe karakter olduğunda yanlış olarak yorumluyor.
veritabanımda kullanıcı adının olduğu yerde karşılaştırmam "utf8_turkish_ci" şeklinde (utf8_general_ci olduğunda da hata veriyor)
htmlentities fonksiyonunu kullanmadığımda problem olmuyor (türkçe karakterle giriş yapıyor) bu fonksiyonu kullanmazsam çok mu güvensiz olur? bu fonksiyonla birlikte türkçe karakter kullanabilme şansım var mı?
ayrıca extra güvenlik için ne tavisye edersiniz?