2016-04-24 19 views
-1

データベースから次のページ(processor.php)テーブルをロードしました。リンクをクリックすると、solve.phpに接続してGETや特定のIDでダウンロードまたは表示します。 私はprocessor.phpphp jQuery ajaxデータベースから画像を表示するための呼び出し

  • 問題にとどまる一方で、何の問題、画像のダウンロードを「ダウンロードしない」をクリックします:私は、「表示」をクリックし、別のページにページが表示されます。
  • 要件:画像プレビューを同じページに表示したい。
  • 私の考え:jQuery Ajax関数を使用する。
  • 私の質問:hrefを削除する必要があります。タグをprocessor.phpに入れて、Ajax関数内でどのタグを使うべきでしょうか?

Ajax関数では、 "?"データを処理する方法がわからないマーク。それを完了してください? SQLスクリプトを使用して@BeSため

$(document).ready(function() { 
    $("#?????????").click(function(e) { 
     e.preventDefault(); 

     $.ajax({ 
      url: "solve.php", 
      type: "GET", 
      data: ?????, 

      success: function(data){ //function to be called if request succeeds 
       $("#preview").html(data); 
      } 
     }); 
    }); 
}); 

enter image description here

CREATE TABLE Upload(
Id INT NOT NULL AUTO_INCREMENT, 
Name VARCHAR(30) NOT NULL, 
Type VARCHAR(30) NOT NULL, 
SizeMB DECIMAL(9,2) NOT NULL, 
Content LONGBLOB NOT NULL, 
PRIMARY KEY(Id) 
); 

processor.php

$query = "SELECT Id,Name,Type,SizeMB FROM Upload"; // Good practice. Do not process much data here. leave Content field 
$result = mysqli_query ($con, $query) or die ("Couldn't execute SELECT query: ". mysqli_error($con)); 
$nrows = mysqli_num_rows($result); 
echo '<table> 
         <tr> 
          <td>Id</td> 
          <td>Name</td> 
          <td>Type</td> 
          <td>Size (MB)</td> 
         </tr>'; 
$selfpg = $_SERVER['PHP_SELF']; 
while($row = mysqli_fetch_assoc($result)){ 
    extract($row); 
    echo "<tr> 
          <td>$Id</td> 
          <td>$Name</td> 
          <td>$Type</td> 
          <td>$SizeMB</td> 
          <td> <a href='solve.php?id=$Id'> Download </a> </td> 
          <td> <a href='solve.php?id=$Id&view=preview'> View </a> </td> 
         </tr>"; 
} 
echo '</table>'; 

プログラムコード

あなたのHTML内

http://s000.tinyupload.com/index.php?file_id=51687103902659541890

答えて

1

は、JavaScriptで

<a class="image-view" href='solve.php?id=$Id&view=preview'> 

リンクにクラスを追加し、このクラスを含むすべての要素を見つけ、クリックされた1のhref属性を取得します。

$(".image-view").click(function(e) { 
    e.preventDefault(); 

    var url = $(this).attr('href'); // Get href attribute of current element 
    $.ajax({ 
     url: url, // Use url with arguments 
     type: "GET", 

     success: function(data){ //function to be called if request succeeds 
      $("#preview").html(data); // It should be html here 
     } 
    }); 
}); 
+0

、私はあなたのソリューション@Besをテストしました。しかし、それは動作していません。一度確認できるようにファイルをアップロードできますか?ありがとう – Amali

+1

これは疑問符の付いた部品を解決します。しかし、成功関数では、正しいことをする必要があります。 '#preview'要素は与えられておらず、' solve.php'も与えられていません... – BeS

+0

先生、私は自分の投稿にリンクを貼ります。見て。私がやった間違ったことを言いなさい。ありがとう – Amali

関連する問題