此代码正在运行并显示关系表。
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT member.*, account.*
FROM member, account
WHERE member.mem_id = account.mem_id';
mysql_select_db('databasename');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
echo "Account Number:{$row['Account_Number']} <br> ".
"First Name: {$row['fname']} <br> ".
"Last Name: {$row['lname']} <br> ".
"Address: {$row['address']} <br> ".
"Contact: {$row['contact']} <br> ".
"Share Capital: {$row['Share_Capital']} <br> ".
"Regular Savings: {$row['Regular_Savings']} <br> ".
"Power Savings: {$row['Power_Savings']} <br> ".
"--------------------------------<br>";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>
现在这是光输出。
帐号:
名字:
姓氏:
地址:
联系:
股本:
定期储蓄:
帐号: 名字: 姓: 地址: 联系: 股本: 定期储蓄:
成功获取数据
现在我想只显示两个关系表中的一个帐户。例如,如果我查询我的帐号并输入帐号,则不会显示每个会员的帐户详细信息。所以在我的输出中,整个成员及其在数据库中的详细信息显示出来。如何才能设法只显示两个关系表中的一个帐户。
答案 0 :(得分:0)
你可以像这样扩展你的where条件,我已经给了$ memid = 1作为示例,你可以将$ memid作为POST或GET或任何其他值传递给它
$memid = 1; // example
$sql = "SELECT member.*, account.* FROM member, account WHERE member.mem_id = account.mem_id AND member.mem_id = '".$memid."' ";
这可能会对你有所帮助
答案 1 :(得分:0)
您需要更新SQL以按要查询的帐号进行过滤:
$sql = 'SELECT member.*, account.*
FROM member, account
WHERE member.mem_id = account.mem_id WHERE account.mem_id = '.intval($_GET['mem_id');
注意:这只是一个简单的例子,您可能想要一种更好的方法来构建sql语句