Şimdi Ara

bu kodda hata mı var (başlangıç seviyesi)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
894
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • temel alıştırmaları yaparken şurada kaldım
    sifre.php
     
    <?php
    if ($username== "" and $password== ""){
    print "kullanıcı adınızı veya şifre girmediniz.";
    }
    elseif ($username == "rockstar" and $password == "123"){
    print "kullanıcı adı ve şifreniz doğrulandı.";
    }
    elseif ($username== "jamaisvu" and $password== "123"){
    print "kullanıcı adı ve şifreniz doğrulandı.";
    }
    else {
    print "kullanıcı adı veya şifre hatalı";
    }


    ?>

    sifre.html

     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>

    <title>Untitled</title>

    </head>
    <body>
    <form action="sifre.php" method="post">
    Kullanici adi <input type="text" name="user_name"><BR>
    sifreniz <input type="text" name="password"><br>
    <input type="submit" value="GIR">
    </body>
    </html>

    kullanıcı adı ve şifresini girdiğim halde "kullanıcı adınızı veya şifre girmediniz." cevabını alıyorum







  • İlk yazdığın if de mantık hatası var. and yerine or kullanman lazım, verdiğin mesajla uyumlu olması için.
    Bir de sifre.html de sifre kutusunun harfleri gözükmesin istiyorsan type="password" demen lazım.

    Onun dışında sen de büyük ihtimal register_globals kapalıdır. Bu php.ini dosyasından ayarlanıyor, bunun olduğu satırı bul ve söyle değiştir:
    register_globals=on

    Ama bu pek iyi bir yöntem değil. Ben şahsen direk $_POST kullanmayi tercih ediyorum. Hem karışıklık olmuyor, hem de uyum sorunu yaşamıyorsun, her yer de çalışıyor. Bunun için en başa şunu eklemen yeterli:
    $username=$_POST['username'];
    $password=$_POST['password'];



    < Bu mesaj bu kişi tarafından değiştirildi =burhan= -- 14 Temmuz 2009; 17:57:05 >
  • =burhan=

    elimdeki kitabin orneklerini kurcaliyordum orada and kullanmis ama dediginiz gibi mantik hatasi olusuyor. kitaptaki diger konulardaki orneklerde duzgun calismiyor.kitabimida degistirmeliyim sanirim.
    $username=$_POST['username'];
    $password=$_POST['password'];
    kullanarak sonuca ulastim yardiminiz icin cok tesekkur ederim.
    password kismini da duzelttim tekrar tesekkur ederim.
  • Bunun sebebi php.ini dosyandaki bazı ayarlardan kaynaklanıyor. Yani $_POST["username"] bazı sunucularda otomatik olarak $username olarak algılanır. Yani yazarın hatası yok...
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.