2017-12-10 8 views
1

私はSELECTデータをデータベースから取得しています。このデータにはリンクがあります。私が望むのは、リンクをクリックすると、別のページに行くのではなく、そのデータをdivに読み込むということです。各リンクはdatabase.Belowからdivにロードするためのデータを知っているからidが付属しています私は、リンクをクリックしPHPのリンク内容を同じページに表示

.pricepopにデータベースからデータをロードする javascriptを持っている以下のコード

<div class="pricepop"></div> 
<div class="pricetab"> 
<table class="table"> 
       <thead> 
        <tr> 
         <th>COMMODITIES</th> 
         <th>UNITS</th> 
         <th>INTERNATIONAL PRICE($)</th> 
         <th>TERMS</th> 
         <th>LOCAL PRICE (&#8358;)</th> 
         <th>AS AT</th> 
         <th>MARKET</th> 
         <th>Full Details</th> 
        </tr> 
       </thead> 
       <tbody> 
       <style> 
       .table > thead > tr > th, .table > tbody > tr > td { 
        font-size: 10px !important; 
        font-family: 'Lato', sans-serif; 
        font-weight: bold; 
       } 
       </style> 
        <?php 
        $sql = $db->prepare("SELECT * FROM commodityprices"); 
        $result = $sql->execute(); 
        while ($row = $result->fetchArray(SQLITE3_ASSOC)) 
        { 
         $id = $row['id']; 
         $_SESSION['id'] = $id; 
         $name = $row['name']; 
         $unit = $row['unit']; 
         $iprice = $row['iprice']; 
         $lprice = $row['lprice']; 
         $irate = $row['irate']; 
         $lrate = $row['lrate']; 
         $terms = $row['cterms']; 
         $asat = date('d/M/Y'); 
         $market = $row['market']; 

          echo '<tr> 
          <td>'.$name.'</td> 
          <td>'.$unit.'</td>'; 
          if ($irate == "Down") 
          { 
           echo ' 
           <td style="background: #ef5a66; color: #fff"><i class="fa fa-caret-down"> </i> '.$iprice.'</td>'; 
          } 
          else 
          { 
          echo ' 
          <td style="background: #28bc88; color: #fff"><i class="fa fa-caret-up"> </i> '.$iprice.'</td>'; 
          } 
          echo '<td>'.$terms.'</td>'; 
          if ($lrate == "Down") 
          { 
           echo ' 
           <td style="background: #ef5a66; color: #fff"><i class="fa fa-caret-down"> </i> '.$lprice.'</td>'; 
          } 
          else 
          { 
          echo ' 
          <td style="background: #28bc88; color: #fff"><i class="fa fa-caret-up"> </i> '.$lprice.'</td>'; 
          } 
          echo '<td>'.$asat.'</td> 
          <td>'.$market.'</td> 
          <td><a class="comprice" href="pricedetails.php?id='.$id.'">View more</a></td> 
          </tr>'; 
        }     
        ?> 
       </tbody> 
       </table> 
</div> 

です以下は

$(document).ready(function() { 
    $(".comprice").on("click", function (e) { 
     e.preventDefault(); 
     $(".pricepop").load("pricedetails.php"); 
    }); 
}); 

残りの価格の詳細を取得しますpricedetails.phpコードです。

    <thead> 
        <tr> 
         <th>COMMODITIES</th> 
         <th>TERMS</th> 
         <th>LOCAL PRICE (&#8358;)</th> 
         <th>AS AT</th> 
         <th>MARKET</th> 
         <th>Price/bag</th> 
        </tr> 
       </thead> 
       <tbody> 
       <style> 
       .table > thead > tr > th, .table > tbody > tr > td { 
        font-size: 10px !important; 
        font-family: 'Lato', sans-serif; 
        font-weight: bold; 
       } 
       </style> 
        <?php 
        $priceId = $_SESSION['id']; 
        $sql = $db->prepare("SELECT * FROM commodityprices WHERE id = ?"); 
        $sql->bindParam(1, $priceId, SQLITE3_INTEGER); 
        $result = $sql->execute(); 
        while ($row = $result->fetchArray(SQLITE3_ASSOC)) 
        { 
         $id = $row['id']; 
         $name = $row['name']; 
         $iprice = $row['iprice']; 
         $lprice = $row['lprice']; 
         $lrate = $row['lrate']; 
         $terms = $row['cterms']; 
         $asat = date('d/M/Y'); 
         $market = $row['market']; 
         $priceperbags = $row['priceperbags']; 

          echo '<tr> 
          <td>'.$name.'</td>'; 
          echo '<td>'.$terms.'</td>'; 
          if ($lrate == "Down") 
          { 
           echo ' 
           <td style="background: #ef5a66; color: #fff"><i class="fa fa-caret-down"> </i> '.$lprice.'</td>'; 
          } 
          else 
          { 
          echo ' 
          <td style="background: #28bc88; color: #fff"><i class="fa fa-caret-up"> </i> '.$lprice.'</td>'; 
          } 
          echo '<td>'.$asat.'</td> 
          <td>'.$market.'</td> 
          <td class="comprice">'.$priceperbags.'</td> 
          </tr>'; 
        } 
        ?> 
       </tbody> 
       </table> 
</div> 

問題は今に関係なく、私はエコーphpデータから上のクリックしたリンクは、.pricepopに表示されるデータは、詳細はechoリンクを最後のものであるということです。

リンクをクリックすると、そのリンクのidからの詳細がechoで、.pricepopに表示されるように修正できますか?

答えて

0

あなたが必要とするものを得るには、AJAX POSTまたはGET statemantを使用する必要があります。シンプルなjQuery​​はお手伝いできません。

基本的に、新しいデータを読み込んだり追加したりするには、何らかの種類のページネーションを行う必要があります。ここで

は例です:

http://itsolutionstuff.com/post/php-infinite-scroll-pagination-using-jquery-ajax-exampleexample.html http://phppot.com/php/ajax-pagination-with-php/

+0

おかげでなく、どのようにこの問題を解決するためにスクロール無限できますか? – diagold

関連する問題