2012-05-29 77 views
0

我有疑問,在PHP中,阿賈克斯形式.. 讓我解釋一下預期的情景......傳遞值檢索值在JavaScript AJAX功能隱藏的價值

  1. 我有更新數量購物車中使用產品ID的產品是Key。

  2. 我使用下拉列表,onchange它調用ajax函數並傳遞值(即,數量爲this.value)以及從MySQL數據庫檢索到的產品ID。

  3. 在JavaScript函數中,它通過ajax傳遞兩個值,並在PHP中獲取值並更新相應products_id的數量。

  4. 如果成功,它必須返回表格更新的價值無需重新加載整個頁面或表單 ...

我這個問題了一個星期堆放,我不能能得到的回答..請幫助我..

讓你知道我是如何調用的JavaScript函數,

<select name="update" onchange="updatequantity(this.value,<?php echo $row['products_id']; ?>)" > 

但是這款C所有函數不能發送值到ajax ...

+0

您可能會有['.get'](http://api.jquery.com/jQuery.get/),['$ .post'](http://api.jquery.com /jQuery.post/)或['.ajax'](http://api.jquery.com/jQuery.ajax/)在您的'updatequantity'函數內調用,將這些參數發送到您的PHP並顯示/附加響應文本在你的文檔內部回調中,有數以千計的優秀jquery-ajax指南(這對JQuery來說是小菜一碟)。 –

回答

0

這是使用道場。

添加follwing頭標記

<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.2/dojo/dojo.js"></script> 
<script type="text/javascript"> 
function updatequantity(input, id) 
    dojo.xhrPost({ 
      url: "updatequantity.php", 
      content: { 
        id: id, 
        quantity: input.value 
      }, 
      load: function(result) { 
        result //this variable will hold the quantity 
      } 
    }); 
</script> 

在服務器上:updatequantity.php

<?php 
$id = $_POST['id']; 
$quantity = $_POST['quantity']; 
//some sql query like "update cart_items set quantity=".$quantity." where id=".$id.";" 
echo $quantity; 

該解決方案非常砍死在一起,古老的許多攻擊,例如SQL注入和薩維javascripters 。