2012-09-20 28 views
0

單列這裏是簡短的PHP代碼我的工作,添加使用AJAX

$feed_url = "JASON Feed URL"; 
$json = file_get_contents($feed_url); 
$products = json_decode($json); 

foreach($products as $product){ 
$id = $product->id; 
$name = $product->name; 
$link = $product->link; 
} 
$query = INSERT INTO TABLE(id,name,link) VALUES ($id,$name,$link); 
$result = mysqli_query($query); 

我能拉的所有產品清單。現在,我想添加「選擇性產品」到我的數據庫。

例如,我想在每個產品的下方顯示「安裝」按鈕,當我點擊「安裝」時,產品詳細信息將添加到我的數據庫並顯示「預加載動畫圖像」。 (我不想使用提交「表單方法」,因爲它會刷新搜索。)

我知道這可以使用AJAX來實現,但我從來沒有學過AJAX :-(因爲我必須緊急完成此項目沒有時間學習AJAX(完成當前工作後肯定會學到)

有人請提出基本功能或步驟來做到這一點,我會自己找到更多的信息來完成它,有一點幫助將不勝感激

回答

0

我不願意給出完整的答案,但我知道被卡住的感覺:)

如果你有安裝按鈕setup l IKE在此與下方的加載圖片:

<a class="installButton" id="product1">Install</a> 
<img src="images/loading.gif" id="loading" /> 

凡對應於產品ID的ID,那麼你可以做一個jQuery的功能如下:

$('.installButton').click(function(e) { 
    e.preventDefault(); 
    $("#loading").show(); 
    var productId = $(this).attr("id"); 
    $.ajax({ 
     type: "GET", 
     url: "yourPhpScript.php", 
     data: "productId="+productId, 
     dataType: "json", 
     success: function(response) { 
      $("#loading").hide(); 
     }   
    )}; 
}); 

你會再修改你的PHP腳本從$_GET超全局以產品ID,只有插入到數據庫:

// Here we get the product id and store it in a variable for use. 
$product_id = $_GET['productId']; 

$feed_url = "JASON Feed URL"; 
$json = file_get_contents($feed_url); 
$products = json_decode($json); 

foreach($products as $product){ 
    // Here we make sure that we only get the data of the corresponding product id. 
    if($product->id == $product_id) { 
     $id = $product->id; 
     $name = $product->name; 
     $link = $product->link; 
    } 
} 

$query = INSERT INTO TABLE(id,name,link) VALUES ($id,$name,$link); 
$result = mysqli_query($query); 
+0

gimg1感謝答覆,我沒有收到來自其他頁面的產品ID,其實我瀏覽所有的列表通過Feed提供可用產品,並從列表中選擇單個或多個產品並添加到數據庫。 – prototype

+0

因此,這些產品將在頁面上列出並提供所有相應的詳細信息,並且您希望每個產品旁邊都有一個安裝按鈕,以將它們添加到數據庫中? – gimg1

+0

是的,在從Feed中提取產品詳細信息之後,我想選擇要添加哪一個以及哪個不添加。我將在每個產品的下方添加「安裝」按鈕,當我點擊安裝按鈕時,唯一的產品將添加到數據庫。 – prototype