点击提交时如何使用isset

时间:2018-01-11 09:48:33

标签: php

当我们点击提交时,我不明白如何使用isset发送表单变量。当我单击提交按钮时,会出现一个通知,指示:

  

未定义的索引:第8行的C:\ xampp \ htdocs \ test7.php中的rollno。

我的目的是通过点击使用isset函数提交和更新来更新详细信息,并在更新后再次返回到表单。

我的代码在这里:

 <html>
  <head>
   <style>
   </style>
  </head>
  <body>
    <form method="post" action="test7.php">
       <center>Enter Roll Number: <input type="text" name="rollno" required/></center><br>
          <center><input type="submit" name="submit" value="submit" id="submit" /></center>
   </form>
  </body>
</html>

test7.php从这里开始

 <html>
     <head>
     </head>
     <body>
       <?php
         include('connect.php');
         $rno=$_POST['rollno'];
          $sql="select * from stddetails where rollno='$rno'";
          $query=mysql_query($sql);
          $count=mysql_num_rows($query);
          if($count>0)
          {
             $row=mysql_fetch_array($query);

          }
        ?>
        <center><form method='post'>
            <table>
                <tr><td>Roll Number</td><td><input type='text' name='roll' value='<?php echo $row['rollno'];  ?>'  disabled /></td></tr>
                <tr><td>Student Name</td><td><input type='text' name='sname' value='<?php echo $row['sname'];  ?>' size='80' /></td></tr>
                <tr><td>Father Name</td><td><input type='text' name='fname' value='<?php echo $row['fname'];  ?>' size='80'/></td></tr>
                <tr><td>gender</td><td><input type='text' name='gender' value='<?php echo $row['gender'];  ?>' /> </td></tr>
                <tr><td>Aadhar</td><td><input type='text' name='aadhar' value='<?php echo $row['aadhar'];  ?>' /> </td></tr>
                <tr><td>SSC Htno</td><td><input type='text' name='ssc' value='<?php echo $row['sschtno'];  ?>' /></td></tr>
                <tr><td>SSC board</td><td><input type='text' name='board' value='<?php echo $row['sscboard']; ?>' /></td></tr>
                <tr><td>SSC Grade</td><td><input type='text' name='grade' value='<?php echo $row['sscgrade'];  ?>' /></td></tr>
                <tr><td colspan='2'><center><input type='submit' name='Submit' value='Update' /></center></td></tr>
           </table>
        </form></center>

      <?php
         if(isset($_POST['Submit']))
       {
          echo"success";
       }

      ?>
     </body>
    </html>

3 个答案:

答案 0 :(得分:1)

第8行

你必须写:

$rno = isset($_POST['rollno']) ? $_POST['rollno'] : '';

而不是:

$rno=$_POST['rollno'];

如果变量(condition) ? true : false存在,则三元运算符$rno设置$_POST['rollno']的值。

答案 1 :(得分:-1)

//试试这个..

 if (isset($_POST["submit"]) && !empty($_POST["submit"])) {
        echo "Success";    
    }else{  
        echo "Unsuccess";
    }

答案 2 :(得分:-1)

就像一个探索。

从技术上讲,当您加载页面时,代码已经被删除了。没有检查告诉它何时应该发生。这就是if(isset())的用途。它会检查,如果存在变量或者发生了某个操作,例如提交按钮。由于您的按钮需要进行更新,因此您可以告诉它,因为@ User2342558指出要检查是否已发生该操作。如果是这样,那么请执行您的代码。如果检查没有发生,您的变量将为空并导致问题。