• 09-09-2007, 02:32:53
    #1
    Üyeliği durduruldu
    Bir formda 4 tane metin girişi var, ben ise en azından ikisine giriş yapılmasını istiyorum. İster 1-4, ister 2-4, ister 1-2...

    Nasıl sağlayabilirim böyle birşey?
  • 09-09-2007, 02:44:03
    #2
    Alıntı
    <form action="gonder.aspx" name="Form" method="post" onSubmit="return FormCheck();">
    <input type="text" name="Text1" value="">
    <input type="text" name="Text2" value="">
    <input type="text" name="Text3" value="">
    <input type="text" name="Text4" value="">
    <input type="submit" name="Gönder" value="Gönder">
    </form>

    <script>
    function FormCheck(){
    TextCount = 4
    MinCount = 2
    iVal = 0
    for (var i=1; i<TextCount ; i++) {
    if(document.getElementById("Text"+i).value==""){
    iVal = iVal + 1
    }
    }
    if(iVal<MinCount){
    alert("Lütfen en az "+MinCount+" alan doldurunuz.");
    return false;
    }else{
    return true;
    }
    }
    </script>
    Javascript & Html buyur.
  • 09-09-2007, 03:34:29
    #3
    $post1=$_POST['post1'];
    $post2=$_POST['post2'];
    $post3=$_POST['post3'];
    $post4=$_POST['post4'];
    $bos=0;
    if ($post1="")
    $bos++;
    if ($post2="")
    $bos++;
    if ($post3="")
    $bos++;
    if ($post4="")
    $bos++;
    if($bos>2)
    die("En az iki alan doldurmalısınız. <a href='sayfanınlinki'>Lütfen Buraya Tıklarayak Eksikleri doldurunuz</a>");
  • 09-09-2007, 11:18:37
    #4
    Üyeliği durduruldu
    İkinize de teşekkür ederim. JS bilmiyorum, PHP öğrenmeye çalıştığım için PHP daha iyi oldu
  • 09-09-2007, 14:07:57
    #5
    if elseif gibi işlemlerde tek eşittir işareti kullanılmaz.

    if ($bosmuabi=="") {

    }
  • 09-09-2007, 18:55:08
    #6
    evet birini yazıp kopyala yapıştır yapmıştım hepsi yanlış çıkmış.

    if ($post1="")
    $bos++;
    if ($post2="")
    $bos++;
    if ($post3="")
    $bos++;
    if ($post4="")

    olan kısım

    if ($post1=="")
    $bos++;
    if ($post2=="")
    $bos++;
    if ($post3=="")
    $bos++;
    if ($post4=="")

    olacak
  • 09-09-2007, 20:23:11
    #7
    Üyeliği durduruldu
    $post1="" bu şekilde kullanmamanızı tavsiye ederim değişken koşullarınızı.

    .null. tanımı ile =0 arasında farklılık vardır. null cevapsızdır.

    bu yüzden

    boş ise empty($post1) değil ise !empty($post1) kullanınız.

    eğer veri sayısal bir işlem için kullanılmakta ise $post1=="0" kullanınız.
  • 09-09-2007, 22:23:39
    #8
    Hard_Love adlı üyeden alıntı: mesajı görüntüle
    $post1="" bu şekilde kullanmamanızı tavsiye ederim değişken koşullarınızı.

    .null. tanımı ile =0 arasında farklılık vardır. null cevapsızdır.

    bu yüzden

    boş ise empty($post1) değil ise !empty($post1) kullanınız.

    eğer veri sayısal bir işlem için kullanılmakta ise $post1=="0" kullanınız.
    !empty($post1) yerine isset($post1) de yapılabilir
  • 09-09-2007, 22:46:30
    #9
    Üyeliği durduruldu
    Öneriler için teşekkürler. Henüz elim birşeye alışmamışken bunları öğrendiğim iyi oldu.