如何从mysql中检索数据并将其显示在文本字段中

时间:2014-09-04 10:31:33

标签: php html mysql

我正在尝试创建一个包含4列项目,数量,成本和金额的html表单......所有这些都在一个php文件中。

item列是一个select标签,它从mysql表中收集数据,工作正常

现在,根据item1的值,费用必须显示在费用文字标记中。

以下是我的代码:

</tr>


        <tr>  <td align="left">
               <?php
$user_name = "won";
$password = "won@123";
$database = "won";
$server = "127.0.0.1";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);

if ($db_found) {
$result = mysql_query("SELECT item FROM test ");

echo "<select>";
echo "<option value=''>Select Item</option>";



while($row = mysql_fetch_array($result))

  {

echo "<option value='item1' id='item1' name='item1'>"  .$row['item']. "</option>";
  }
  echo "</select>";

}
mysql_close($db_handle);
?>


              </td> 

              <td align="left"><input type="text" id="qty1" name="qty1"> </td>

              <td align="left"><input type = "text" onclick = "myFunction1()" id="row['cost']"  > </td>
              <td align="left"><input type="text" id="amount1" name="amount1" value=0> </td> 


</tr> 


*************************************************************************
The following is the function :

function myFunction1()
{
<?php
$user_name = "won";
$password = "won@123";
$database = "won";
$server = "127.0.0.1";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);

if ($db_found) {
$result = mysql_query("SELECT cost FROM test where item='$item1' ");

$row = mysql_fetch_array($result);



}
mysql_close($db_handle);
?>

}

2 个答案:

答案 0 :(得分:0)

你不能点击php事件,php是SERVER SIDE,如果要显示异步,你需要javascript

答案 1 :(得分:0)

你想要什么并不是很清楚。

但据我了解你应该使用Ajax。

首先准备你的项目选择标记在你的代码中。

然后处理select标签的更改事件并将该值传递给ajax调用以查找该项目的成本,并将该结果存储在ajax成功的成本标记中。

当你准备好你的函数时,myfuncton会在另一个php文件中使用它,并从ajax调用该文件。

您可以编写的代码如下:

<script src="jquery-1.7.1.min.js"></script>
<script>

    $(document).ready(function(){

        $( "#item1" ).change(function() {

        var item = $("#item1 option:selected").text();

        $.ajax({
                    url: 'getcost.php',
                    type: "POST",
                    data: {
                        'item' : item,                   
                    },
                    success : function(response) { 
                      $('#cost').val(response);
                    },
                    error : function() {                                                
                    },
                    complete : function() {
                    }

                });
         });
    });
    </script>
当前代码中的

为您的select标记提供id:

<select id="item1">

在getcost.php文件中编写myfunction()代码:

只需编辑该代码。在查询之前添加。

$ item1 = $ _POST ['item'];

之后

$row = mysql_fetch_array($result);
echo $row['cost'];

写到最后

exit;

并在您的输入标记中将费用ID更改为费用&amp;删除onclick。

这可能会对你有所帮助。我刚才在这里写我没有测试过,所以可能存在一些与法术或变量相关的错误。