2014-02-13 52 views
0

我是一個可怕的業餘愛好者,並沒有完全理解PHP的過程。PHP獲取VS jquery.load/ajax

我有一個購物車網站,我想修改某些功能並添加一些可用性增強功能。

在主要產品頁面上,用戶可以將產品添加到購物車中。在同一產品頁面上,用戶還會看到產品的附加項目。這些添加項目也有自己的產品頁面。

通常,當用戶點擊添加項目時,會將其從主要產品頁面帶到附加項目的產品頁面。

我想要做的是在jQuery/CSS3疊加層中添加項目的信息 - 並將它們保留在主要產品頁面上。

我已經實現了這個使用jQuery.load - 但購物車(Zen-Cart)有一個歷史快照 - 和jQuery.load功能有一些不良影響。此外,我寧願直接從SQL使用PHP加載信息。

我有一個看看這個: http://www.w3schools.com/php/php_ajax_database.asp

,並發現它是比jQuery.load一個更清潔的解決方案。

我正在理解的問題是PHP Get如何在這樣的環境中執行。例如,兩個用戶通過getuser.php文件同時加載附加項目的信息。同樣,通過使用多個選項卡瀏覽,一個用戶訪問兩個附加項目的信息。

說得更加簡單 -

如果對項目user1添加點擊,它穿過基礎上,添加一個變量在項目選擇,即 xmlhttp.open(「GET」,「getuser.php如果用戶2點擊不同的添加項目,它會做同樣的事情 - 但假設用戶2的請求稍微晚一點,這會覆蓋最初由用戶1的請求放在那裏的信息嗎?q =「+ str,true」 - 因此給user1提供了錯誤的信息?或者它會創建文件的多個實例,並避免這兩個請求的結果相互干擾?同樣,同一個用戶同時使用兩個瀏覽器選項卡發出的兩個請求呢?

我知道如何不好這聽起來 - 但我不知道這一點,我如何更好的字很抱歉:(

回答

0

可以使用$.get(url,data,response);在jQuery來實現這個例子:

$('#product-list a').on('click',function(){ 
    var id = $(this).data('id');//if you put product id as attribute data 
    $.get('addtocart.php',{id: id},function(){ 
     $('#cart').load('cart.php'); //only your cart reload. not the page! 
    } 
    return false; 
} 

,並在您addtocart.php

$id = $_GET['id'] 
//your query put here 

這僅僅是簡單的示例,不是在生產中使用。因爲在現實生活中,你需要關注的安全性。對不起,我的英語不好:)

更多信息,請訪問:

+0

感謝 - 但我試圖避免使用jQuery的。我想使用PHP Get - 現在基本上想要現在如果來自另一個客戶端的第二個請求將覆蓋來自另一個客戶端的第一個請求,如果運行PHP Get的文件分開運行 – StuyvesantBlue