我可能在做一些愚蠢的事情,但已经为此工作了一天,似乎找不到错误。
我有几个表的连接。当我使用print_r(mysql_fetch_array($res)打印出结果时,我看到了我想要的字段的值。但是,当我尝试回显它或以其他方式访问它时,它似乎是空的。任何人都可以发现我做错了什么?提前感谢,因为这让我发疯了。
表格(省略了一些字段)
members
id|username|password|datetime|email
membercontact
id|memberid|contactid
php
$sql = "SELEcT m.*,mc.*,mc.contactid as mccon
from `members` m
LEFT JOIN `membercontact` mc
on m.id = mc.memberid
WHERE m.id = '147'"
$res = mysql_query($sql);
while($row = mysql_fetch_array($res)) {
echo $row['contactid'];
echo $row['mccon']
}
输出:没有。我还尝试了其他方法来访问contactid字段。其他字段会打印,例如 $row['password']
但是,当我在结果上使用 print_r 时,我可以看到以下内容:
数组 ( [0] => v [用户名] => v [1] => pass [password] => pass [2] => 147 [id] => 147 [3] => 2013-09-05 12: 08:03 [日期时间] => 2013-09-05 12:08:03 [4] => vz@aol.com [电子邮件] => v@aol.com [19] => 933 [contactid] => 933 [20] => 147 [memberid] => 147 [24] => 933 [contactid] => 933)
我注意到的唯一奇怪的事情是某些字段重复了不止一次,特别是contactid虽然我不能说为什么。(数字跳过的原因是省略了很多其他无关的字段。)