2011-05-01 101 views
2

我正在設計銷售發票表單。我能夠從MySQL中提取數據進行選擇。銷售發票表單

說到物品,物品的數量是可變的。有時,它有3個項目,有時是20個。

如何根據用戶的輸入添加行和刪除行,以滿足所需的行數(所有這些行將從MySQL中選擇下拉列表)?

+1

我不確定你想說什麼。你可以添加一些更多的細節嗎? – JohnP 2011-05-01 12:16:23

+0

除了更多的細節,請添加您迄今爲止的數據庫和代碼的結構。這很難猜測。 – 2011-05-01 12:21:09

回答

3

這是你可以用PHP & Jquery & Ajax組合做的事情。

<script> 
$('select[name=items]').change(function() { 
// If selected value is bigger than 0 
if ($(this).val() > 0) { 
    $.post("get-items.php", {itemval: $(this).val()}, function(data) { 
     //$('#items').fadeIn('slow'); // Remove the beginning // to use this effect. 
     $('#items').html(data); 
    }); 
} 

}); 
</script> 

現在重要的是這裏;

  • 您的選擇框的名字是項目
  • 當項目選擇框的值將發生變化(如果是大於0),它將把價值得到-items.php。
  • get-items.php必須用html中的回聲(如果你想)。例如:

    你想用一些html元素列出數據;

    <ul> 
    <li>First Item</li> 
    <li>Second Item</li> 
    <li>Third Item</li> 
    </ul> 
    

的GET-items.php應該輸出(回聲)這樣,才能在頁面中使用它(想象它像包括,無論你將回顯出來,這將包括所有的HTML元素在它的頁面,你想用它。

  • 一旦你的GET-items.php會返回一些輸出,代碼將收集輸出,並添加到具有項ID的元素的響應。對於例如;

    <div id="items"></div> 
    
  • 您可以在get-items.php中收集發佈的值;

    $itemValue = $_POST['itemval']; 
    

一旦你可以收集有關項目值信息(顯示,不顯示,顯示有限等。這是你的決定)與PHP,之後,這是你要什麼給呼應了決定瀏覽器。

我希望我能正確理解你,我希望這有助於你。

編輯

您的評論後,大約收集取決於用戶的選擇更多的信息(也可以是1個或多個),所以我相信去與將以下最簡單的方法;

我們將使用Json和Jquery。

$.getJSON('get-product-info.php', function(data) { 
    // Create an array 
    var productSetup = []; 
    // Loop and assign Json (returned value) to our new setup array 
    $.each(data, function(key, val) { 
     productSetup[key] = val; 
     // Add values to html elements and other actions here. 
    }); 
}); 

我們在這裏做的很簡單。我們收集了關於產品的信息,從get-product-info.php在Jquery & Json的幫助下。我們創建productSetup jQuery的數組,當您從GET-產品info.php的收集數據,從GET-產品info.php的

分配返回值,我們使我們的生活更輕鬆,我們將使用JSON能夠將數據從PHP轉換爲Jquery。

GET-產品info.php的

  1. 後,你做你的查詢重要信息,創建一個新的數組來返回結果爲數組。
  2. 收集到的新結果數組必須使用json編碼並將其回顯出來,以便Jquery可以捕獲它。

<?php 
#Assuming $data is your new results array 
echo json_encode($data); 
?> 

我們使用JSON來從一種語言方便地傳輸數據到另一個。在回答我的請求時,我已經給了你一個發送信息的代碼。當用戶做出更多選擇時,只需將它們發送到您的PHP腳本,並通過Json收集返回的結果以更改頁面中的html元素。

有關更多信息,請檢查PHP json_encode user manualPHP json_decode user manual

我希望這可以幫助

+0

感謝您的回覆。我還在尋求建議,告知如何根據用戶選擇的產品ID來顯示數據庫中的產品名稱。然後添加其他字段,如單價,總金額等 – mmdel 2011-05-18 15:48:29

+0

那麼我們需要添加第四件事。 JSON。 – Revenant 2011-05-18 19:28:39

+0

編輯我的答案。請檢查。 – Revenant 2011-05-18 19:39:17

相關問題