2012-02-12 143 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