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);
?>








24 Yorum
Abdullah
08.10.2010
3. satirdinda hata veriyor bu yapi duzeltme imkaniniz varmi
phpdili
08.10.2010
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?
Uğur keskin
09.02.2010
4.satır hata veriyor ben acemiyim yardım ederseniz sevinirim
saygılar
Phpsever
09.09.2010
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
aynen banada bunun gibi bir hata veriyorr napmalıyızzz ? // acemiyim.!
rahm
09.06.2011
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.
acemiphpci
09.25.2010
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
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
Burak (heart.thief01@hotmail.com)
11.20.2010
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
header kullanılabilmesi için headerdan önce hiçbir html kodu olmaması gerekiyor diye biliyorum.
Furkan
11.25.2010
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
Veli kürk
12.21.2010
sabırım lokal hostta denediğiniz için hata alıyorsunuz bende hata vermedi isterseniz hostta deneyin.
superkahraman
01.26.2011
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…
tuncer
02.06.2011
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
ben yaptim
bilal
07.02.2011
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?
DonkanShinigami
07.13.2011
“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.
ilker
08.17.2011
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
frizbi
08.25.2011
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.
Faik
11.08.2011
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. !
ahmet
05.13.2012
iyi de burdaki giriş bilgilerini zaten herkes görüyor,ne anlamı kaldı ki?
Burçin Erdoğan
07.09.2012
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.
selim
12.08.2012
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…
BySamet38
02.25.2013
Evet Sorunsuz Çalışıyor Ama Bir Bilgisayarda Bir Kere Şifreyi Girdiğimiz Zaman O Bilgisayarda Bir DAhaŞifre İstemiyor. Pek Güvenli Değil
tester
03.21.2013
merhaba, sayfa kaynağını göste dediğimizde kullanıcı adı ve şifre ortaya çıkacaktır bunu engellemenin en basit yolu nedir acaba?
Sonuç bulunamadı.