2017-11-11 4 views
2

検索バーのキーを検索してセッションストアをsession_start();にしています。または、この検索セッションが残されていない任意のページを更新し、その後、どのように私のコードでは、検索キーのセッションを破壊するために使用すると、どこが、私はここでセッションを破壊する私のページに設定しない($_SESSION['search']);コードを置くべきでは検索キーページ区切り問題リンクをクリックするか、別のキーを検索するときにセッションを破棄する必要がある場合

<?php unset($_SESSION['search']); 
require_once('inc/top.php');?> 
       <body> 
       <div id="wrapper"> 
<?php require_once('inc/header.php');?> 
<?php    
        $total_num_page=1; 
        if(isset($_GET['page'])) 
        { 
        $page_id=$_GET['page']; 
        } 
        else 
        { 
         $page_id=1; 
        } 
        if(isset($_POST['submitSearch']) || $_SESSION['search']) 
        { 
         session_start(); 
         if($_POST['submitSearch']){ 
          $_SESSION['search']=$_POST['search']; 
         } 
         $all_post_query= "select * from files where recieved_by like '%". $_SESSION["search"]. "%' or processed_by like '%".$_SESSION["search"]."%' or purpose like '%".$_SESSION["search"]."%' or file_name like '%".$_SESSION["search"]."%' order by date desc"; 
         $all_post_run=mysqli_query($con,$all_post_query); 
         $all_post=mysqli_num_rows($all_post_run); 
         $total_page=ceil($all_post/$total_num_page); 
         $page_start_from=($page_id-1)*$total_num_page; 
        } 
       else 
       { 
        $all_post_query="select * from files order by date desc"; 
        $all_post_run=mysqli_query($con,$all_post_query); 
        $all_post=mysqli_num_rows($all_post_run); 
        $total_page=ceil($all_post/$total_num_page); 
        $page_start_from=($page_id-1)*$total_num_page; 
        } 

       ?> 
    <div class="container-fluid body-section " style="margin-top:90px;margin-bottom:300px;"> 
          <div class="row"> 
           <div class="col-xs-12 col-sm-12 col-md-12"> 
           <h1><i class="fa fa-hand-o-down" aria-hidden="true"> File List </i></h1> 
           <a href="letterfile.php"><button type="button" style=" margin-left:190px; margin-top:-70px;" class="btn btn-primary"><i class="fa fa-envelope-o" aria-hidden="true"> Case for Letter </i></button> 
           </a> 
           <a href="callfile.php"><button type="button" class="btn btn-default" style=" margin-left:210px; margin-top:-70px; background:#880E4F; "><i class="fa fa-phone-square"aria-hidden="true" style="color:white;"><font color="white"> Case for Call</font> </i></button> 
           </a> 
           <a href="dustbinfile.php"><button type="button" class="btn btn-danger" style=" margin-left:150px; margin-top:-70px;"><i class="fa fa-book" aria-hidden="true"> Filed Case</i></button> 
            </a> 
            <div class="col-md-4 col-md-offset-7 search-box"> 
             <form action="index.php" class="search-form" method="post"> 
              <div class="form-group has-feedbacck"> 
              <label for="search" class="sr-only">Search:</label> 
              <input type="text" class="form-control" name="search" id="search" placeholder="Search Here" /> 
              <input type="submit" class="Goform" name="submitSearch" value="Go!"/> 
              <span class="glyphicon glyphicon-search form-control-feedback"></span> 
              </div> 
             </form> 
            </div> 
            <hr> 
            <table class="table table-hover table-striped"> 
             <thead> 
              <tr> 
               <th>Id</th> 
               <th>File-name</th> 
               <th>Purpose</th> 
               <th>Recieved-By </th> 
               <th>Processed-By</th> 
               <th>Adress</th> 
               <th>Contact-No</th> 
               <th>Date</th> 
               <th>Update</th> 
              </tr> 
             </thead> 
             <tbody> 
         <?php 
              if(isset($_POST['submitSearch'])) 
              { 
               $search=$_POST['search']; 
               $p_query="select * from files where recieved_by like '%$search%' or processed_by like '%$search%' or purpose like '%$search%' or file_name like '%$search%' order by date desc limit $page_start_from, $total_num_page"; 

              } 
              else 
              { 

        $p_query="select * from files order by date desc limit $page_start_from, $total_num_page"; 
              } 
          $p_run=mysqli_query($con,$p_query); 
          if(mysqli_num_rows($p_run)){ 
          while($row=mysqli_fetch_array($p_run)) 
          { 
           $c_id=$row['id']; 
           $file=$row['file_name']; 
           $purpose=$row['purpose']; 
           $recieve=$row['recieved_by']; 
           $processed=$row['processed_by']; 
           $address=$row['address']; 
           $contact=$row['contact_no']; 
           $date=$row['date']; 


          ?> 

とこちらのページのコードです送信のページ番号です。

<ul class="pagination"> 
         <?php 
         for($i=1;$i<=$total_page;$i++) 
          echo "<li class='".($page_id == $i? 'active' : '')."'><a href='index.php?page=".$i."'>$i</a></li>"; 
         ?> 

        </ul> 

ここでセッションを設定解除するコードを書いてください。私はPHPで新しく、このコードはSQLインジェクションの脆弱性を知っています。

答えて

0

あなたを破棄したいセッション

解除($のSESSION [ 'キー'])

関連する問題