2016-04-13 59 views
2

我正在開發使用PHP MySQL的&一個網站,我有兩個功能,從數據庫 1.獲取數據, 2.用鏈接顯示HTML視圖使用代碼來查看單個產品的詳細信息$ _GET變量。 一切正常。但我希望產品詳細信息在未刷新頁面的情況下加載。我知道Ajax能夠處理任務,但我不熟悉Ajax。任何援助將不勝感激。無頁如何展示產品的詳細信息被刷新

下面是我的代碼示例:

$(document).ready(function(){ 

    $.ajax({ 
     url: 'products.php', 
     method: 'GET' 
    }).then(function(data){ 
     for(int i=0; i < data.length; i++){ 
      $('body').append('<li class="col-sx-12 col-sm-3"><div class="product-container>...'+data[i].attribute+'</div></li>'); 
      //append all information that you need 
     } 
    }) 

}); 

在後端:

//Main product view 
function product_view($product) { 
    $output = ""; 
    $output = $output . '<li class="col-sx-12 col-sm-3">'; 
    $output = $output . '<div class="product-container">'; 
    $output = $output . '<a href="'. BASE_URL .'item/?id='. $productID .'&name='. str_replace(' ', '-', $product["name"]) .'"> product name</a>'; 
    $output = $output . '----'; 
    $output = $output . '----'; 
    $output = $output . '----'; 
    $output = $output . '</div>'; 
    $output = $output . '</li>';   
    return $output; 
} 

//Main product display 
function get_products() { 
    require(ROOT_PATH ."inc/db_connect.php"); 
    $sql = "SELECT * FROM products WHERE status='Active'"; 
    $query = mysqli_query($db_connect, $sql);      
    return $query; 
} 

//View page 
$products = get_products(); 
if (!empty($products)) { 
    foreach ($products as $product) { 
     echo product_view($product); 
    } 
} 
+0

是的,你絕對需要ajax。做一些研究,其實很簡單。選擇json解決方案,它們比返回完整的HTML代碼更輕。 – Phiter

+0

太寬泛。看看使用AJAX的一些示例和教程。既然你用jQuery標記了這個問題,你會發現很多使用這個庫的簡單例子。做一次嘗試。如果您遇到困難,我們將很樂意爲您提供幫助。 – David

+0

你可以用jQuery Ajax做些事情,看看這個:http://stackoverflow.com/questions/2410773/how-to-return-data-from-php-to-a-jquery-ajax-call – Jer

回答

0

使用Ajax在你的問題的一些意見建議,您可以在客戶端使用此示例代碼你需要返回JSON:

$products = get_products(); 

header('Content-Type: application/json; charset=utf-8'); 
echo json_encode($products); 
相關問題