Bu forum çerez kullanır
Bu forum, kayıtlıysanız oturum açma bilgilerinizi ve değilseniz son ziyaretinizi saklamak için tanımlama bilgilerini kullanır. Çerezler, bilgisayarınızda depolanan küçük metin dokümanlardır; Bu forum tarafından oluşturulan çerezler yalnızca bu web sitesinde kullanılabilir ve güvenlik riski oluşturmaz. Bu forumdaki tanımlama bilgileri ayrıca okuduğunuz belirli konuları ve bunları en son ne zaman okuduğunuzu da izler. Lütfen bu çerezleri kabul edip etmediğinizi onaylayın.

Bu sorunun tekrar sorulmasını önlemek için, seçeneğinize bakılmaksızın tarayıcınızda bir çerez saklanacaktır. Altbilgideki bağlantıyı kullanarak istediğiniz zaman çerez ayarlarınızı değiştirebilirsiniz.

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Mail Doğrulama
#1
Mail Doğrulama

Ziyaretçinizin mail adresini istiyor ama burda yanlış karakterler veya hatalı mailller istemiyorsanız bu scripti deneyin. Çok kapsamlı bir denetleme sistemi olan scripti Türkçe'ye çevirirken bile bayağı zorlandım.


<HEAD>..</HEAD> arasına eklenecek kod :



<script Language="JavaScript">
<!-- Strict E-mail by kurt.grigg@virgin.net

YourEmailAddress='mailliniziyazin@yahoo.com';

function Highlight(){
document.form1.email.focus();
document.form1.email.select();
}
function check(){
var emailbox = document.form1.email;
var email = document.form1.email.value;
var blanks = ''*100;
var naughty = new Array("arse","bastard","cunt","fuck","shit","wanker","piss","twat");
var sneaky = email.toLowerCase();
var illegal = "Yanlış karakter girdiniz.\nİzin verilen karakterler aşşağıda sıralanmaktadır.\n\nAlfabetik Harfler [Büyük veya küçük]\nSayılar\nSadece 1 adet @\nBoşluk Olmamalı\nTürkçe Karakterler Olmamalı (ı ğ ü ş ö ç )\nKısa Çizgi [Tire]\nAlt Çizgi\n\n";
//mail check
if (email <= blanks){
alert("Lütfen e-mail adresinizi giriniz.");
Highlight();return false;
}
else if (email.length > 62){
alert('Tüm e-maillerde en fazla 63 karakter bulunabilir.');
Highlight();return false;
}
else if (email.charAt(0) == " "){
alert('E-mail adresinizin başında boşluk var, olmamalı');
Highlight();return false;
}
else if (email.charAt(email.length-1) == " "){
alert('E-mail adresinizin sonunda boşluk var, olmamalı');
Highlight();return false;
}
else if (email.indexOf(" ") !=-1){
alert('E-mail adresinizin içinde boşluk var, olmamalı');
Highlight();return false;
}

//CHECK FOR ILLEGAL CHARACTERS 1
for (i=0; i < email.length; i++){
var caps = "a".toUpperCase();
var E = email.substring(i, i + 1);
if ((E < "0" || "9" < E ) && E != "@" && E !="." && E !="-" && E !="_" && E < caps || "z" < E){
alert(illegal);
Highlight();return false;
}
}
//CHECK FOR ILLEGAL CHARACTERS 2
if ((email.indexOf('`',0) != -1) || (email.indexOf(String.fromCharCode(94)) != -1) || (email.indexOf(String.fromCharCode(92)) != -1) || (email.indexOf('[',0) != -1) || (email.indexOf(']',0) != -1)){
alert(illegal);
Highlight();return false;
}
//CHECK FOR SWEARING
for (i=0; i < email.length; i){
if (sneaky.indexOf(naughty[i]) != -1){
alert('Please remove the swear word - '+naughty[i].toUpperCase());
Highlight();return false;
}
i++;
}
//GENERAL FORMATING
if (email.charAt(0) =="."){
alert('Adresinizin başında nokta var, olmamalı.');
Highlight();return false;
}
else if (email.split('@').length > 2){
alert('E-mail adresinizde 1 adet @ bulunmalı.');
Highlight();return false;
}
else if (email.indexOf ('@',0) == -1){
alert("Adresinizde @ sembolü yok");
Highlight();return false;
}
else if (email.indexOf("@") < 2){
alert("Adresinizde @ sembolünden önce en az 2 karakter olmalı.");
Highlight();return false;
}
else if (email.charAt(email.length-1) == "@"){
alert('E-mail adresiniz @ sembolü ile bitemez.');
Highlight();return false;
}
else if (email.indexOf ('.') == -1){
alert("E-mail adresinizde en az 1 tane nokta olmalı.");
Highlight();return false;
}
else if (email.indexOf('.',email.indexOf('@')) == -1){
alert('Adresinizde @ sembolünden sonra en az 1 tane nokta olmalı.');
Highlight();return false;
}
else if (email.substring(email.indexOf('@'),email.length).indexOf(".") < 4){
alert('Adresinizde @ sembolünden sonra en az 3 karakter olmalı');
Highlight();return false;
}
else if (email.lastIndexOf(".")+2 == email.length){
alert('Adresinizin sonunda nokta ile ayrılan bölümler en az 2 karakter olmalı.');
Highlight();return false;
}
else if (email.substring(email.lastIndexOf("."),email.length).length > 4){
alert('Adresinizin sonunda en fazla 3 karakter olmalı');
Highlight();return false;
}
else if (email.charAt(email.length-1) =="."){
alert('E-mail adresiniz nokta ile bitemez.');
Highlight();return false;
}
ok=null;
confirm('Yazdığınız adres - '+email+'\nOnaylıyor musunuz?\n\nAdres şimdi gönderilsin mi?')?ok=1:ok=0;
if (ok==1) return true;
else return false;
}
//-->
</script>



<BODY>..</BODY> arasına eklenecek kod :



<script Language="JavaScript">
<!--
var styleok=(document.all)?'class=looks':0;
document.write('<form name="form1" method="POST" action="mailto:'+YourEmailAddress+'" ENCTYPE="text/plain" ONSUBMIT="return check()">'

+'<input '+styleok+' name="email" type="text" size="25" maxlength="63">'
+'<input '+styleok+' type="SUBMIT" value="Gönder">'
+'<input '+styleok+' type="Reset" value="Sil">'
+'</form>');
//-->
</script>


NOT : Yazılan mail adresi size ziyaretçinizin e-mail programı yoluyla ulaştırılır(outlook vb. gibi). Ziyaretçinizde windows üzerinde çalışan bir mail programı yoksa, mail adresini gönderemeyecektir. Formun action kısımında ufak bir değişiklik yaparak mail adresinizin size farklı yollardan (cgi asp vb. gibi) ulaşmasını sağlayabilirsiniz.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Tarih Doğrulama ЯeboR 0 3,140 12-03-2005, 18:53
Son Yorum: ЯeboR
  Parola Doğrulama ЯeboR 0 3,223 12-03-2005, 18:39
Son Yorum: ЯeboR
  Form Doğrulama ЯeboR 0 3,372 12-03-2005, 18:22
Son Yorum: ЯeboR

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi