Anasayfa > Programlama > PHP > Raslantisal kullanici sifreleri uretmek
Makaleye verilen puanlar

Raslantisal kullanici sifreleri uretmek




Konu: PHP Yazar: Serkan Tarih: 01/04/02

Bildiginiz gibi bazi ag uygulamalarinda, kullanici ile sunucu arasinda bir belirli
anahtar (sifre) yaratilmasi ve boylece bazi haklarin sifreyle kendini tanimlayan
kullaniciya verilmesi saglanir.Bu makalemizde tamamen raslantisal yaratilan boyle
bir sifrenin kullanicinin e-posta hesabina gonderilmesini tartisacagiz.
Ornek :

PHP:

  1.   
  2.  <?php 
  3.  function Raslantisal_Sifre($uzunluk) { 
  4.  srand(date("s"));
  5.  $olasi_karekterler = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
  6.  $sifre = "";
  7.  while(strlen($sifre)<$uzunluk) { 
  8.  $sifre .= substr($olasi_karekterler,(rand()%(strlen($olasi_karekterler))),1);
  9.  }
  10.  return($sifre);
  11.  }
  12.   
  13.  //8 karekterli bir sifre icin asagidaki gibi bir fonksiyon //cagrilabilir...Fonksiyonun
  14.  sonucunda donen deger //ekrana echo edilir.
  15.   
  16.  echo Raslantisal_Sifre(8);
  17.   
  18.  /* Rastlantisal degeri urettigimize gore bu degeri bir degisken icinde saklayip
  19.  manipule edebiliriz.Boylece PHP hazir fonksiyonu mail () yardimiyla kullanicinin e-
  20.  posta adresine belirli bir format kullanarak gonderebilirz.
  21.   
  22.  Bazi durumlarda bu degeri kullanicinin bilgilerinin yer aldigi veritabani tablosunda
  23.  saklamanizda gerekebilir.
  24.   
  25.  */
  26.   
  27.  ?>


Aciklama :

1.Satir : Fonksiyon deklare ediliyor.Fonksiyonun ismi "Raslantisal_Sifre" ve aldigi
argument ise "$uzunluk" olarak programci tarafindan belirlenmistir.

2.srand(date("s")); ile random ureteci besleniyor.

3. $olasi_karekterler degiskeni sifre icinde gecebilecek karekterler
tanimlaniyor.Bu degisken bildiginiz basit bir "duzyazi" (string) veri tipindedir.

4. $sifre degiskeni ilk defa deklare ediliyor.aslinda gerek yok ama programlama
tekniklerinde bir degiskeni baslatmak "iyi bir hareket" olarak
degerlendiriliyor.tavsiye edilir.

5.while dongusu kullanilarak istenen karekter uzunluguna kadar
$olasi_karekterler degiskeninin bir kareketeri raslantisal olarak secilerek $sifre
degiskenine ekleniyor.

substr ()

Aciklama : Degiskenin sahip oldugu degerin belirli bir parcasini duzyazi olarak
dondurur.

Formati : duzyazi substr (duzyazi duzyazi, tamsayi baslama_degeri [, tamsayi
uzunluk]) Ornekler :

PHP:

  1.   
  2.  $rest = substr ("abcdef", -1); // "f" doner
  3.  $rest = substr ("abcdef", -2); // "ef" doner
  4.  $rest = substr ("abcdef", -3, 1); // "d" doner


rand ()

Aciklama : Rastlantisal bir deger uretir.

Formati : tamsayi rand ([tamsayi en_dusuk [, tamsayi en_yuksek]])

Ornekler :

Ornegin MySQL tablosundan tamamen rastlantisal bir satir secmek icin asagidaki
kod kullanilabilir :

SELECT * FROM tableadi ORDER BY RAND() LIMIT 1

veya basitce 1-9 arsasinda rastlantisal bir sayi uretmek icin :

$sayi = rand (1,9);

strlen ()

Aciklama : Degiskenin degerinin kac karektere sahip oldugunu sayisal
olarakdondurur.

Formati : tamsayi strlen (degisken_adi)

Ornekler :

PHP:

  1.   
  2.  <?php 
  3.  $tmp=0;
  4.  $s="Gelecek yil 30 yasima basiyorum...";
  5.   
  6.  while($tmp<strlen($s) && $c=$s[$tmp++]) {
  7.   
  8.  if ($c!=chr(0)){
  9.  echo $c;
  10.  }
  11.  } 
  12.  //"Gelecek yil 3" ciktisini verir.
  13.   
  14.  ?>


Serkan Hadi Ceylani serkan@turk-php.com


Bu makale hakkında ek bilgi eklemek için buraya tıklayınız

Bu makalenin yazar yada kaynağını bildirmek için tıklayınız.

Digg this Post! Add Post to del.icio.us Bookmark Post in Technorati Furl this Post!
Eklenme tarihi: 3-2-2006  Okunma: 1087

Bu Makaleye Verilen Puan:    Makaleye verilen puanlar
Bu Makaleye Puan Ver  

Bölüm Başlık Kullanıcı Yorumları


Bu makaleye yorum gönderilmemiş, ilk yorumu sen gönder !
Reklam Netinternet
Bazı hakları saklıdır: İçeriğin editör ve yazarlarımız tarafından oluşturulan kısımları ve site tasarımının hakkı saklıdır.  Bu sayfa en iyi 1280x1024 ve 1024x768 çözünürlükte izlenir.
Powered by BilgiPortal v2.2
Emlak Yorumlar Müzik estetik