İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Sinema Dizi Akıllı Ev Motosiklet Mikromobilite Kripto Para Sağlık Teknolojileri Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Web Programlama (PHP, ASP, HTML, CSS, JavaScript)
Web Programlama (PHP, ASP, HTML, CSS, JavaScript)

İstenmediğinde Çalışmayan PHP Kodu

02326.05.20207 cevap671 görüntüleme
#1
Admin Paneli Yapacağım Eğer Şifre İstediğim Şifre Değilse Hata Verecek Ama Daha İlk Girişte Hata Veriyor. Ne Yapabilirim?
Cevaplar
#2
<?php
    $sifrem = "1234sifre";
           if($_POST['sifre] == $sifrem) {
                 header('Location: /panel.php');
              } else {
                echo 'sifre hatali';
            }
  


Ayrıca ne hatası veriyor?
Undefined index, sql ya da virgül hatası vesaire...
#3
Farkında mısınız bilmiyorum ama konunuz cevaplanmaya baya bir kapalı. Yaşadığınız sorunu detaylandırın.
#4
Sorununuzu biraz daha ayrıntılı anlatabilir misiniz? Mesela bahsettiğiniz şifre ne için kullanılıyor, bir üyelik sistemi vs. mi?
023 Konuyu açan
#5
Evet biraz anlatamadım. Benim sıkıntım şu; Şifre girme olayını falan yapıyorum. Sorunum şifre yokken şifrenin hatalı gözükmesi. Şifre girmemişken yani form'a değer atmamışken değer "" yani hiç olarak gözüküyor. Sonucunda da daha birşey yazmadan şifre hatalı yazıyor. Teknik birşey yok ama görüntü kirliliği. Onu da şöyle çözdüm; hidden input koydum ve şifre kontrolünü hidden = hidden inputun değeri ise vs. Yani form gönderilmediyse işlem yapmıyor.

Gece telefonu gizlice aldım öyle yazıyorum ve kolum ağrıdı. Bundan sonra klavyeme iyi davranacağım :D
#6
Ben yine bir sey anlamadim.
#7
Sanırım parola kısmı boş ise işlem yapmasın istiyorsunuz değil mi? Veya farklı hata vermesini.

Mobil olarak girdiğim için kod paylaşmıyorum ama eğer internette "php if input empty" şeklinde bir arama yaparsan daha sağlıklı çözümler bulabilirsin. String değerinin boş olması "empty" olduğu anlamına gelir ve String olması bilgisayarın kullanıcının bir şifre girdiğini sanmasına yol açıyor.
#8
Öncelikle inputunuza "required" attribute'unu ekleyerek bu inputun boş bırakılmasını engelleyebilirsiniz, bu input boş iken form submit edilmeye çalışıldığında tarayıcı direkt ilgili inputa highlight atarak kullanıcıyı uyaracaktır.
<input type="password" name="sifre" required />


Ayrıca required attribute'unu eklememize rağmen kullanıcı tarayıcı aracılığıyla "Öğeyi Denetle" yaparak inputtaki "required" attribute'unu silebilir bu yüzden sunucu tarafından da kontrol yaptırmamız lazım. Bunu da PHP'nin "empty" fonksiyonu ile gerçekleştirebiliriz.
src/islem.php:
<?php
$sifre = strip_tags($_POST['sifre']); //Şifre inputuna girilen değeri süzerek $sifre değişkenin attık.
//Google'da "PHP Form Validation" şeklinde arama yaparsanız
//örnek fonksiyonlara ulaşabilirsiniz, oldukça sağlıklı yöntemler bulunuyor.

if (empty($sifre)) //Eğer şifre değişkeni boş ise
header('Location: ../giris.php?sifre=bos'); //GET "sifre" değişkenine "bos" değerini vererek kullanıcıyı "giris.php" sayfasına gönderdik.
?>

giris.php:
<?php
if(isset($_GET['sifre']) && $_GET['sifre'] == "bos") //Eğer GET "sifre" değişkeni set edilmişse ve bu değer "bos" ise
echo 'Şifre alanı boş bırakılamaz!'; //sayfaya uyarı metni yazdırdık.
?>
düzenlendi

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.