KlavyeMonitor.com    


MENÜ

. ANASAYFA

. KABLOSUZ & TELSİZ

. AVUÇİÇİ & CEP

. LINUX

. WINDOWS

. WEB

. INTERNET

. BİLGİSAYAR

. ANTİK BİLGİ

. ARAMA

. BAĞLANTILAR
. Spam Gönderenler

POPÜLERLER

htmlders

linux kitapları

proxy adresleri kablo

sayisal loto sans topu

elmekyonlen

TDGTW-WarXing

eposta yazim kurallari

BearShare Morpheus ve iMeshi Hizlandirma Yolu

proxy-hiz

komutlar

web hosting hizmetleri

inet-hiz

linux ile windowslari uyutmak

squidle2kat

yedekleme

internet hizi

database oracle mysql sql komutlari

windows mydoom virus

PDA ve cep telefonu icin www sayfasi yapimi


= = =

Favorilere ekle
Google




Javascript ile Eposta Arama Motoru



İlker Fıçıcılar

Javascript ile html sayfasina gömülü bir eposta arama motoru yapımını anlatan bir yazı. Yazıda scripti otomatik hazırlamak için gereken unix shell scripti ile hazır bir örnek de yer alıyor.

Geçenlerde bir arkadaşın sayfasını hazırlarken bir "E-posta Adresi Arama" özelliğinin iyi olabileceğini düşündük. Sayfa Tripod'da yer aldığından, bu özelliği Tripod'un cgi servisiyle de yapabilmek mümkündü, ama veritabanındaki adresler fazla olmadığından daha basit bir çözüm olarak Javascript düşünülebilirdi.

Eposta araması, aranan isme karşılık gelen eposta adresi sayfanın yapısı bozulmadan ve yeni bir sayfa yüklenmeden küçük bir alanda belirse iyi olur dedik ve işe koyulduk.


Javascript'teki .indexOf yapısını kullanarak yaptığım çözümü, örnek olması için yalnızca birkac eposta adresiyle birlikte aşağıya alıyorum; kodun ardından ise birkaç açıklama, kodla birlikte kullanılacak form ve bu kodu oluşturmak için kullanılabilecek Unix shell scripti yer alıyor:

< !-- Eposta Adresi Aramak icin Javascript Kodu -->
< script language="JavaScript">
< !--
Ad = new Object();
Adr = new Object();

Ad[0] = "???";
Adr[0] = "adres bulunamadı";
Ad[1]="ayşe ayla şeker";
Adr[1]="ayla@neyahu.com";
Ad[2]="ilker ficicilar";
Adr[2]="ilkref@gocyties.com";
Ad[3]="zeliha zümrüt";
Adr[3]="zumrut@nedebiyat.nege.edu.tr";

var Adet = 3

function ara() {

var Kisi = 0;
var Durum = false;
var Nesne = document.forms[0].arayiver.value.toLowerCase();

if (Nesne != null) {
for ( var i=1; i < = Adet; i++) {
if (Ad[i].indexOf(Nesne) != -1) {
Durum=true;
Kisi = i;
}
}
document.forms[0].adres.value = Adr[Kisi];
}
}
// -->
< /script>

Görüldüğü gibi gayet basit bir şekilde, formdaki arayiver isimli girdiyi önce küçük harfli bir hale dönüştürüyor, sonra da küçük harflerden oluşmuş Ad dizisinde indexOf ile arıyoruz, bulduğumuzda ise karşılık gelen en son e-posta adresini formdaki adres isimli nesneye yazıyoruz. Bu adres isimli yer ister bir text alanı, ister bir girdi kutucuğu isterseniz de bir "button" olabilir.
Biz sonuncusunu kullandık:

< html> < body bgcolor=white>
< meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-9">
< br>
< table border=1 cellspacing=0 cellpadding=0 width=200 align=top>
< tr> < td bgcolor=black> < center> < font color=white> E-posta Adresi Arama< /font>
< /center> < /td> < /tr> < tr> < td>
< form name="form1" action="javascript:ara()">
< table border="0">
< tr> < td> < font size="2"> Aranan Ad ve/veya Soyad:< br> < /font> < /td> < /tr>
< tr> < td> < font size="2">
< input type="text" name="arayiver" value="" onClick="ara()">
< /font> < /td>
< td> < font size="2"> < input type="button" value=" Ara " onClick="ara()">
< /font> < /td> < /tr>
< tr> < td> < font size="2">
< !--
Bu da farkli bir yontem ile adres gostermek icin (ama digeri iptal edilmeli)
< input type="text" size=30 name="adres" value="" onClick="ara()"> < br>
-->
< input type="button" name=adres value=" Adres Burada Belirecek " >
< /font> < /td> < /tr>
< /table>
< /form>
< /td> < /tr> < /table>
< br>
< /body> < /html>

Bu arada bir hatırlatma: eğer bu form sayfadaki ilk form değilse, koddaki forms[0] kısımları ona göre ayarlanmalı. Yani, ilk form ise forms[0], ikinci form ise forms[1], üçüncü ise forms[2] vs. kullanılacak.

Bir de, bu javascript kodunu faklı adreslerle yeniden oluşturmak kolay olsun diye ufak bir Unix sh scripti ayarladım, aşağıdaki script "arkeo.adr" dosyasına

adres ad soyad

şeklinde girilmiş bilgi satırlarını kullanarak "mailara.js" dosyasını oluşturuyor, bu ise yukarıdaki javascript kodunun farklı adreslerle oluşturulmuş biçimi.

Aşağıdaki shell scriptiyle kullanilabilecek örnek "arkeo.adr" dosyası satır satır şunları içerebilir:

ilkref@geocities.com Ilker Ficicilar
ayse@neyahu.com Ayse Yilmaz
bilgi@nükleer.findthere.com Nukleer Enerji Karsiti Platform
root@agk.ekitap.gen.tr Gece Kusu - sistem yoneticisi
...

script ise bu:

#!/bin/sh
#
# e-posta arama javascripti ureteci
#
# ilker Ficicilar
# ilkref@gocyties.com
#
# adres ad soyad
# seklindeki girdileri kullanarak uygun javascript kodunu olusturur.
#
dosya=arkeo.adr

cat < < EOF1 > mailara.js
< !-- Eposta Adresi Aramak icin Javascript Kodu -->
< script language="JavaScript">
< !--
Ad = new Object();
Adr = new Object();

Ad[0] = "???";
Adr[0] = "adres bulunamadi";
EOF1

# Bu kisim veritabanini olusturuyor.
i=0
cat $dosya | while read qw
do
i=`expr $i + 1`
set $qw
adr=$1
shift
# buyuk harfleri kucuk harflere donusturuyoruz
ad=`echo $* | tr A-Z a-z`
echo "Ad["$i"]="$ad";"
echo "Adr["$i"]="$adr";"
done > > mailara.js
adet=`wc $dosya`
set $adet
adet=$1
echo > > mailara.js
echo "var Adet =" $adet > > mailara.js
echo > > mailara.js

# scriptin devami

cat < < EOF2 > > mailara.js
function ara() {

var Kisi = 0;
var Durum = false;
var Nesne = document.forms[0].arayiver.value.toLowerCase();

if (Nesne != null) {
for ( var i=1; i < = Adet; i++) {
if (Ad[i].indexOf(Nesne) != -1) {
Durum=true;
Kisi = i;
}
}
document.forms[0].adres.value = Adr[Kisi];
}
}
// -->
< /script>

EOF2

Bu shell scriptini örneğin "jsyap" adıyla kaydedip chmod u=rwx jsyap ile calıştırılabilir bir komut haline getirdikten sonra ./jsyap diyerek, daha önce "arkeo.adr" dosyasına yazdığınız adresler kullanılarak "mailara.js" dosyasının oluşturulmasını sağlayabilirsiniz. Daha sonra geriye yalnızca yukarıda verilen form örneğini ve "mailara.js" dosyasını birleştirerek bir HTML sayfasında kullanmak kalıyor.

Bir örnek sayfa olarak da buradaki epostaara.html dosyasını inceleyebilirsiniz.

Kolay gelsin

İlker Fıçıcılar

Mayıs 2000


Arama önerileri: html, javascript, email, elmek, e posta, eposta, arama motoru, email, e,


Kaynak gösterecekler için referans: "Javascript ile Eposta Arama Motoru", İlker Fıçıcılar, http://www.KlavyeMonitor.com/elmekara.html , Mayıs 2000


İlgili Benzer Yazılar:


 
 
 
   
Bu sayfaları Linux'ta oluşturan programı yazan: İlker Fıçıcılar