php匹配来自2个数据库的单元格并提取单元格信息

时间:2015-06-14 17:14:03

标签: php sql

我有我的用户数据库和我的人员数据库

在USERS数据库中,我有以下单元格

ID, FIRSTNAME, LASTNAME, PERSON_ID

在PERSON数据库中,我有以下单元格

ID, FIRSTNAME, PHONE

我想根据USERS DB中的PERSON_ID显示PERSON DB中的PHONE (用户数据库和人员数据库中的ID不一样,因此我需要通过USERS.person_Id来匹配ID以获取电话)

这是我有多远 - 虽然没有运气......没有任何表现:

$query = "SELECT person_id FROM user WHERE person.id=$user_person_id";
$result = mysql_query($query); $line = mysql_fetch_object($result);
echo "Phone: $line[$phone]"; 

2 个答案:

答案 0 :(得分:0)

希望如果我理解你的问题,那么SQL JOINS会帮助你。在这里,我将使用左连接。但请尝试阅读有关联接的更多信息。

 $sql = "SELECT `users`.`id`, `users`.`firstname`, `users`.`lastname`, `person`.`phone` FROM `users` LEFT JOIN `person` ON `users`.`person_id` = `person`.`id`";

 $query = $mysql_query ($sql);
 $result = $mysql_fecth_assoc ($query);

 echo 'Phone: ', $result['phone'];

以下是您的错误:

  1. 从您的评论中,您将结果作为对象获取,并将其显示为数组。 $ line = $mysql_fetch_object($result);
  2. 您使用变量作为数组键。 $line[$phone];
  3. 试试这些新代码。我希望它能奏效。

答案 1 :(得分:0)

SELECT idpersonphone来自users LEFT JOIN person ON usersperson_id = {{1 } {。person WHERE person.phone IS NOT NULL