2012-02-12 182 views
0

我很難完成作業。我試圖製作一個銷售發票系統,當一個字段的值發生變化而不重新加載頁面時,系統會自動填充其他字段。我嘗試過使用會話,但由於我需要刷新頁面,所以效果不佳。php中的文本框自動填充

我已經成功地從我的sql中提取了項目描述獲取數據,它應該提供我選擇的項目的單位。有誰能夠幫助我?

這裏是我的全部代碼:

function suggestValues() { 
$("#field").autocomplete("suggestions.php", { 
width: 256, 
selectFirst: false 
}); 
} 
$(document).ready(function(){ 
suggestValues(); 
}); 

<body> 
<form name="search" method="post" action="enter_sales2.php"> 

<table> 
<tr> 
<td> Receipt #: </td> 
<td> <input type="text" size="20" maxlength="15" name="receiptNum"> </td> 
</tr> 
<tr> 
<td> Customer Name: </td> 
<td> <input type="text" size="20" maxlength="50" name="customerName"> </td> 
</tr> 
</table> 
<table> 
<tr align="center"> 
<td>Qty</td> 
<td> Item Description </td> 
<td> Unit </td> 
<td> Amount </td> 
<td> Total </td> 
</tr> 
<tr> 
<td> <input type="text" size="5" name="qty1"> </td> 
<td> <input type="text" size="39" name="item1" id="field" /> </td> 
<td> <input type="text" size="5" name="unit1"> </td> 
<td> <input type="text" size="5" name="amt1"> </td> 
<td> <input type="type" size="8" name="total1"> </td> 
</tr> 
</table> 

這裏是關於搜索我的PHP文件:

<?php 
$con = mysql_connect("localhost","root",""); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

mysql_select_db("consteel", $con); 

function autosuggest() { 
    $q = strtolower($_GET["q"]); 
    $results = mysql_query("SELECT *FROM item WHERE item_name LIKE '%$q%' LIMIT 10"); 
    while($result=mysql_fetch_assoc($results)){ 
     $item_name = $result['item_name']; 
     if (strpos(strtolower($item_name), $q) !== false) { 
     echo "$item_name\n"; 
     } 
    } 
} 
autosuggest(); 
?> 

請幫我在這..

+0

你應該從代碼的開始處刪除所有這些空格,當你必須滾動閱讀時很難閱讀。 – axiomer 2012-02-12 08:19:21

回答

1

使用相同的方式,已用於自動完成。你必須使用ajax。一旦有人輸入訂單號碼,您可以向您的php頁面發出ajax請求,然後使用響應填充表單數據。

您可以閱讀以下文章。我不能寫所有的代碼,因爲它有點冗長。

http://www.crackajax.net/popform.php

http://www.ibm.com/developerworks/library/x-ajaxxml9/

看來你是使用jQuery。所以你的工作會更容易。

+0

我不確定它..但你能給我一個你正在談論的代碼片段?以及php代碼。我現在真的很難過.. – 2012-02-12 08:28:12

+1

@GeorgeNormanPatayon不,這是你的功課。您必須自己完成研究並閱讀代碼,以便將其實施到您當前的代碼中。人們不會爲你的家庭作業提供代碼答案。然而,他們會指出你正確的方向。谷歌的「jquery自動完成」你正在使用jquery,所以你幾乎在那裏! =] – Relequestual 2012-02-12 10:47:44