2017-09-30 30 views
0

以下のコードでは、ラジオボタンをチェックしていないだけでなく、テキストボックスを空白にして[送信]ボタンをクリックします。 私はユーザに最終的なelse文、すなわち。 "テキストボックスに値を入力してください"。ラジオボタンがチェックされていないときにエラーメッセージが表示される

テキストボックスが空白ですが、ラジオボタンが選択されている場合、コードは正常に機能します。

テキストボックスが空白でラジオボタンが選択されていない場合、「テキストボックスに値を入力してください」というコードをどのように変更すればよいかを教えてください。

This is how my current output looks

<html> 
<body> 

<form action = "Convertor.php" method = "post"> 

    Enter Number <input type = "text" name = "n1" placeholder = "Enter only 
    number"><br><br> 

    <input type = "radio" name = "r" value = "rs"> Convert USD to Rs <br> 
    <input type = "radio" name = "r" value = "m"> Convert Meter To 
Centimeter <br> 
    <input type = "radio" name = "r" value = "d"> Convert Degree to 
Fahrenheit <br> 

    <input type="submit" value="Submit" name = "Submit"> 
</form> 

</body> 
</html> 

<?php 

if(isset($_POST['n1'])) 
{ 
    $no1 = $_POST['n1']; 
    $result = 0; 
    $condition = $_POST['r']; 

    if($no1 != "" || $condition == "") //Also tried !isset($_POST['r']) in 
    place of $condition == "" 
    { 

     if(is_numeric($no1)) 
     { 
      switch($condition) 
      { 
       case "rs": 
        $result = $no1 * 65; 
        break; 

       case "m": 
        $result = $no1 * 100; 
        break; 

       case "d": 
        $result = $no1 * 1.8 + 32; 
        break;     
      } 

      echo $result; 
     } 

     else 
     { 
      echo "Enter only numbers"; 
     } 
    } 

    else 
    { 
     echo "Enter some value in textbox"; 
    } 
    } 
?> 

答えて

0

入力しているあなたは、無線が仲間

<?php 
if (isset($_POST['n1'])) { 
    $no1 = $_POST['n1']; 
    $result = 0; 
    $condition = isset($_POST['r']) ? $_POST['r'] : ""; 

    if(!$condition) { 
     echo "Please select the Conversion Type"; 
    } else { 
     if ($no1) //Also tried !isset($_POST['r']) in 
     { 
      if (is_numeric($no1)) { 
       switch ($condition) { 
        case "rs": 
         $result = $no1 * 65; 
         break; 

        case "m": 
         $result = $no1 * 100; 
         break; 

        case "d": 
         $result = $no1 * 1.8 + 32; 
         break; 
       } 

       echo $result; 
      } else { 
       echo "Enter only numbers"; 
      } 
     } else { 
      echo "Enter some value in textbox"; 
     } 
    } 
} 
?> 

を選択されているそして、あなたがしたい場合は、必ずユーザーを作るために必要なatrributeを使用することができるかどうかを確認するためにISSET機能を使用することができます値を入力する(またはラジオをチェックする)ことができます。また、入力のテキストタイプではなく数字タイプを使用することもできます。

 <input type="number" name="n1" placeholder="Enter only number" required="required"><br><br> 
     <input type="radio" name="r" value="rs" required="required"> Convert USD to Rs <br> 
     <input type="radio" name="r" value="m" required="required"> Convert Meter To Centimeter <br> 
     <input type="radio" name="r" value="d" required="required"> Convert Degree to 
+0

ありがとうございます:) – Krishna

関連する問題