使用 Ajax 根据下拉列表选择显示数据库中的数据


Display Data from database based on dropdown selection Using Ajax?

当我们从数据库中选择一个值时,无法从Daabase获取contnt。请帮助我解决这个问题。

掉落.php

我有一个页面作为放置.php其中包含以下代码。

<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
function showUser(id) {
    //get the selected value
    //make the ajax call
    $.ajax({
        url: 'getuser.php',
        type: 'GET',
        data: {option : id},
        success: function(data) {
           document.getElementById('txtHint').innerHTML=data;
        }
    });
}
</script>
</head>
<body>
<?php
include("database.php");
include("session.php");
$query = "SELECT * FROM invoicetable WHERE username='$_SESSION[username]'";
$result = mysql_query($query);
echo'<select name="users" onchange="showUser(this.value)">';
echo '<option value="">'.'--- Select ---'.'</option>';
while($row = mysql_fetch_assoc( $result )) { 
        echo '<option value="'.$row['id'].'">' . $row['name'] . '</option>';   
}
echo '</select>';?>
<br>
<div id="txtHint"><b></b></div>
</body>
</html>

获取用户.php

<?php
include("database.php");
include("session.php");
$sql="SELECT address FROM invoicetable WHERE username='$_SESSION[username]'";
$result = mysql_query($sql);
echo "<table border='1' style='width:500'>
<tr>
<th>Address</th>
</tr>";
$row = mysql_fetch_array($result); 
  echo "<tr>";
  echo "<td>" . $row['address'] . "</td>";
  echo "</tr>";
echo "</table>";
?>

当我们从数据库中选择一个值时,无法从 Daabase 获取 contnt。请帮助我解决这个问题。 提前致谢

在getuser中尝试这段代码.php

$userid = $_request['option'];
$sql="SELECT address FROM invoicetable WHERE Id='$userid'";

如果有两个字段具有相同的用户名。要解决此问题,您必须使表中的id列是主键。因此,对于具有相同用户名的两个用户,提交的 id 将不同。

$id = $_REQUEST['期权'];

$sql="SELECT address FROM invoicetable WHERE username='$_SESSION[username]' AND id=$id";

试试这个它会起作用。

一个简单的

错误是在getuser.php文件中,您没有从ajax调用中获取userId,而是使用保持不变SESSION_DATA。

你可以把用户ID作为 $id = $_GET['期权'];

并将查询更改为

  $sql="SELECT address FROM invoicetable WHERE id=$id";