MySQL tablosunda mail adresi ve domaini sanırım ayrı tutmuyorsunuz, fakat mysql sorgusunda;
MAILADRES='$MailDomain'
Bu şekilde kullanmışsınız dolayısıyla mail domainin pas geçmesi gayet normal bir durum gibi görünüyor, bunun yerine ilgili mail domainini LIKE komutu ile yaparsanız sanırım sorununuzu çözebilirsiniz.
$MailDomain=end(explode('@',$EMail));
$sql="SELECT MAILADRES FROM YASAKLIMAILLER WHERE (MAILADRES='$EMail' or MAILADRES LIKE '%".$MailDomain."%')";
$rs=mysql_query($sql);
if(mysql_num_rows($rs)>0){
echo "<script>alert('Your e-mail address is prohibited. Please try another e-mail address.'); window.location='index.php';</script>";
}else{
.......
$MailDomain=end(explode('@',$EMail)); bu kodla $EMail değişkenindeki domaini ayrıştırıyorum ve mail domainini $MailDomain değişkenine atıyorum.
Dün akşam bi araştırma yapıp mail kontrolünü javascripte ek olarak php kodu ile yaptırdım bakalım işe yaradı gibi dünden beri yasaklı mail gelmedi.
function isValidEmail($email){
if(filter_var($email, FILTER_VALIDATE_EMAIL)){
return true;
}else{
return false;
}
}
if(isValidEmail($EMail)){
...
}else{
echo "yanlış mail girdiniz.";
}Uyguladığım komut bu umarım işe yaramıştır. Bu gün ve yarında yasaklı mail gelmezse işe yaramış demektir