php

PHP ile Sayfa Şifreleme

Güvenlik amacıyla kullanıcı adı ve şifre girişli sayfalara ihtiyaç duyabiliriz. En basit haliyle aşağıdaki fonksiyonu kullanarak şifreli girişe sahip bir sayfa oluşturabiliriz.

<?PHP
function SifreliGiris($kullanici,$sifre) {
	if(empty($_SERVER['PHP_AUTH_USER']) || empty($_SERVER['PHP_AUTH_PW']) || $_SERVER['PHP_AUTH_USER'] != "$kullanici" || $_SERVER['PHP_AUTH_PW'] != "$sifre") 
	{
		header('WWW-Authenticate: Basic realm="Lütfen kullanıcı adı ve şifreyi giriniz."');
		die(header('HTTP/1.0 401 Unauthorized'));
	}
}
       
//Giriş Bilgileri
$kullanici = 'phpdili.com';
$sifre = '1234';
	   
//Fonksiyonu çalıştıralım
SifreliGiris($kullanici,$sifre);
?>

Hiç durma, hemen paylaş ;-)

    24 Yorum

    1. Abdullah

      08.10.2010

      Cevapla

      3. satirdinda hata veriyor bu yapi duzeltme imkaniniz varmi

      • phpdili

        08.10.2010

        Cevapla

        Ben test ettiğim sırada hiçbir hata ile karşılaşmadım. Siz nasıl bir hata ile karşılaştığınızı söyler misiniz?

    2. Uğur keskin

      09.02.2010

      Cevapla

      4.satır hata veriyor ben acemiyim yardım ederseniz sevinirim
      saygılar

    3. Phpsever

      09.09.2010

      Cevapla

      merhaba verdiği hata bu işte. naısl düzeltilebilir ?

      Warning: Cannot modify header information – headers already sent by (output started at D:xampphtdocsPasss.Php:1) in D:xampphtdocsPasss.Php on line 5

      Warning: Cannot modify header information – headers already sent by (output started at D:xampphtdocsPasss.Php:1) in D:xampphtdocsPasss.Php on line 6

      • eDa

        11.10.2010

        Cevapla

        aynen banada bunun gibi bir hata veriyorr napmalıyızzz ? // acemiyim.!

      • rahm

        09.06.2011

        Cevapla

        merhabalar ben sirtede geziniyordum ve sorduğunuz genel bir soruyu gördüm sizleri çözümü veriyorum çok kolay

        şimdi sayfanın en başına ( kod kısmına) şu kodu yazın:

        sonra aynı şekilde sayfanın bittiği yere de şu kodu yazın:

        düzelmezse e-mailden ulaşabilrsiniz.

        ama şunu sölemek de istiyorum kodlarda hiçbir hata yok gayet düzgün çalışıyorlar .yani bu çözüme de gerek yok. sorunu yaşayanlar bu çözümü deneyebilir.

    4. acemiphpci

      09.25.2010

      Cevapla

      yaww kardeş ben çok ecemiyim yeni basladım derslere bu kodu nasıl aktif hale getiricez yani napıcaz bunu nereye yapıstırcaz lütfenn yardımmm…

      • PfoFreak

        11.07.2010

        Cevapla

        acemi kardesim bu kodu calıstırmak icin oncelikle kendi makineni bir platform olarak kullanman gerekli bunun icin wamp server yuklemelisin kurulum sekillerini ve kullanımı detaylı sekilde bulabilirsin daha sonra bu kodu nereye kopyalayacgını bulabilirsin

    5. Burak (heart.thief01@hotmail.com)

      11.20.2010

      Cevapla

      Warning: Cannot modify header information – headers already sent by (output started at c:\program files\easyphp1-8\www\burak\burak.php:10) in c:\program files\easyphp1-8\www\burak\burak.php on line 18

      Warning: Cannot modify header information – headers already sent by (output started at c:\program files\easyphp1-8\www\burak\burak.php:10) in c:\program files\easyphp1-8\www\burak\burak.php on line 20

      bende bu hatalarla karşılaştım…

      • tnrsrc

        12.14.2010

        Cevapla

        header kullanılabilmesi için headerdan önce hiçbir html kodu olmaması gerekiyor diye biliyorum.

    6. Furkan

      11.25.2010

      Cevapla

      Herkeste farklı satırlarda on line hatası veriyor büyük ihtimal ile kopyala yapıştırda hata karakter hatası yapıyorsunuz. fonksiyonda sorun yok

    7. Veli kürk

      12.21.2010

      Cevapla

      sabırım lokal hostta denediğiniz için hata alıyorsunuz bende hata vermedi isterseniz hostta deneyin.

    8. superkahraman

      01.26.2011

      Cevapla

      Arkadaşlar hata almanızın sebebi oluşturduğunuz PHP Text dosyasının encoding’inden dolayı..

      PHP dosyasını notepad ile açıp Farklı Kaydet / Save As olarak tekrar kaydederken Encoding’i UTF8 yaparsanız sorun düzelir..

      Düzelmezse Notepad++ kullanıp onun encoding ayarından “UTF8 without BOM” olarak deneyin..

      En garantisi ise PHP dosyanızı Dreamweaver ile açıp Page Properties bölümündeki Title/Encoding’den UTF-8 – None – Without BOM olarak kaydedin kesin çalışacaktır..

      Bu arada kodlardan önce boş enter bile olmaması lazım.. Header ile veri taşıyan scriptlerde bu detaylar önemlidir..

      Sevgiler…

    9. tuncer

      02.06.2011

      Cevapla

      Arkadaslar ordan kodu kopyalayin bir metin belgesi acin icine yapistirin sonra sag tıklayin fareye birlikte ac diyin wordpad sonra ordaki dogru olan yani hatasiz kopyalamadir

      onu kopyalayin ve phpye yapistirin :D ben yaptim

    10. bilal

      07.02.2011

      Cevapla

      beyler kdlarda hata yok. siz bir yerde hata yapıyorsunuz bence. ben de acemiyim ama sorun algılamadım.

      benim bir sorum olucak. şimdi biz bu şekilde sayfamızı kodladık fakat bir sonraki girişte bizden şifre istemiyor. yani sayfaya güvenli çıkış yapma kodlarını eklemek lzm. nasıl yapabiliriz?

    11. DonkanShinigami

      07.13.2011

      Cevapla

      “headers already sent by…” hatası alıyorsanız, header(); fonksiyonundan önce bir output vermişsiniz anlamına gelir, bu echo,print fonksiyonu gibi fonksiyonlar olabileceği gibi (yada printf, print_r vs. vs.) html kodu da olabilir. En temizi bunu yapmamak ancak başka çıkar yolu yok diyorsanız, sayfanın en başına ob_start(); en sonuna da ob_end_flush(); yazıyoruz (tabiki php tagları içinde olacaklar). sorun hallolmuş oluyor.

    12. ilker

      08.17.2011

      Cevapla

      s.a üstadım bu sayfa güvenli mi olur.Adam kodları kaynaktan görebilir Bunun passlarını db den alan bi kod yazabilirmisiniz.saygılarımla

    13. frizbi

      08.25.2011

      Cevapla

      Sayfa açıldığında bi mesaj kutusu şeklinde geliyor isim ve şifre bölümü o yüzden seçeneklerden veya klavye kısayolu ile kaynak görünmüyor.

    14. Faik

      11.08.2011

      Cevapla

      ARkadaşım, bu şifreleme tekniği güvensiz. Firefox ile denedim Vazgeç e tıklandığında boş sayfa gözüküyor fakat sayfanın kaynağını görüntüle dendiğinde sayfanın içeri text olarak görüntüleniyor. !

    15. ahmet

      05.13.2012

      Cevapla

      iyi de burdaki giriş bilgilerini zaten herkes görüyor,ne anlamı kaldı ki?

    16. Burçin Erdoğan

      07.09.2012

      Cevapla

      Kodları html tagları içinde çalıştırdığınız için header kodunu php 2.tag olarak algılar ve çalıştırmaz.sitedeki header yerine echo kullanırsanız problem kalmayacaktır.

    17. selim

      12.08.2012

      Cevapla

      Merhaba, php ile basit bir rezervasyon sistemi yapacağım ama pek yapamadım, oda bilgilerini veri tabanında tutacağım ve sayfada odaları radio buton’da sunacağım, mesela 1. radio buton seçildiğinde o radio buton disable hale gelecek eğer rezervasyona uyumluysa alınabilecek. yardım edebilecek varsa ulaşsın lütfennn…

    18. BySamet38

      02.25.2013

      Cevapla

      Evet Sorunsuz Çalışıyor Ama Bir Bilgisayarda Bir Kere Şifreyi Girdiğimiz Zaman O Bilgisayarda Bir DAhaŞifre İstemiyor. Pek Güvenli Değil

    19. tester

      03.21.2013

      Cevapla

      merhaba, sayfa kaynağını göste dediğimizde kullanıcı adı ve şifre ortaya çıkacaktır bunu engellemenin en basit yolu nedir acaba?

    Bir Cevap Yazın