How to avoid redirecting to another page after submit button

Viewed 54

I have created a simple form type page as follows,

<form action="" method="GET" >
      <div class="input-group mb-3">
      <input type="text" name="search" required value="<?php if(isset($_GET['search'])){echo $_GET['search']; } ?>" class="form-control" placeholder="Search data">
      <button type="submit" class="btn btn-primary">Search</button>
       </div>
 </form>

I need to type a text in search box(name ="search") and after clicking submit I need to filter the sql data as follows.

<?php 
     $con = mysqli_connect("10.62.96.133", "root", "", "cdrextend");

      if(isset($_GET['search']))
       {
        $filtervalues = $_GET['search'];
       $query="***";
         $query_run = mysqli_query($con, $query);

         if(mysqli_num_rows($query_run) > 0)
           {
            foreach($query_run as $items)
            {
             ?>
             <tr>
               <td><?= $items['***']; ?></td>
               <td><?= $items['***']; ?></td>
                                  
             </tr>
             <?php
          }
        }
        else
       {
         ?>
          <tr>
           <td colspan="2">No Record Found</td>
           </tr>
         <?php
        }
       }
    ?>

Whenever I hit submit button after typing something in text box, it redirects to login page and I am not getting any results.Can someone show me where I have messed up?

1 Answers

Hi change your forms submit action="" to action="<?php echo htmlspecialchars($_SERVER[" PHP_SELF "]);?>"

<form action="<?php echo htmlspecialchars($_SERVER[" PHP_SELF "]);?>" method="GET" >
      <div class="input-group mb-3">
      <input type="text" name="search" required value="<?php if(isset($_GET['search'])){echo $_GET['search']; } ?>" class="form-control" placeholder="Search data">
      <button type="submit" class="btn btn-primary">Search</button>
       </div>
 </form>
Related