我正在尝试从mySQL中获取数据,我想通过电子邮件过滤结果。 唯一的问题是,我想从预订数据库中获取数据,而用户的电子邮件则存储在不同的数据库中。
当用户预订会话时,将使用
获取他的电子邮件
<?= $fgmembersite->UserEmail(); ?>
并将其保存在reservation_email
下的预订数据库中我尝试使用WHERE reservation_email = <?= $fgmembersite->UserEmail(); ?>
。
**我的问题是,我该怎么办,通过使用来自不同数据库的电子邮件地址过滤来将数据提取到表中? **
<?php
$dbhost = 'localhost';
$dbuser = 'user';
$dbpass = 'pwd';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
$dbname = 'dbname';
mysql_select_db($dbname);
$query = "SELECT * FROM booking_reservation WHERE reservation_email='<?= $fgmembersite->UserEmail(); ?>' ";
$result = mysql_query($query)
or die(mysql_error());
print "
<table class='table table-striped'><tr>
<td width=100>Name:</td>
<td width=100>ID Skype:</td>
<td width=100>indirizzo email:</td>
<td width=100>Richiesta:</td>
</tr>";
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
print "<tr>";
print "<td>" . $row['reservation_name'] . "</td>";
print "<td>" . $row['reservation_surname'] . "</td>";
print "<td>" . $row['reservation_email'] . "</td>";
print "<td>" . $row['reservation_message'] . "</td>";
print "</tr>";
}
print "</table>";
?>
答案 0 :(得分:0)
如果我正确理解了问题,您应该能够在查询中使用数据库名称。
SELECT * FROM `db1`.`table` AS t1 JOIN `db2`.`table` AS t2 ON ...
答案 1 :(得分:0)
我不确定您是如何从第一个数据库中检索电子邮件地址的? 但为此我会以以下形式使用SESSIONS:
<?php
session_start();
//your authentication script
//then
$_SESSION["email"] = $fgmembersite->UserEmail;
//anythink else you need to do
?>
然后在你的脚本中
$query = "SELECT * FROM booking_reservation WHERE reservation_email=".$_SESSION['email'];
我没有对此进行测试,但应该让你朝着正确的方向进行测试