我已经尝试了一切,但没有任何工作。我有两张桌子。具有主键和索引的父表是childcareinfo,密钥是ChildcareID。子表是具有UserID的主键和ChildcareID的外键的用户。该网站设置为使用MM_Username会话变量跟踪用户通过该站点。我创建了以下查询
SELECT *
FROM childcareinfo INNER JOIN users
ON childcareinfo.ChildcareID = users.ChildcareID
但查询会提取所有托儿所,而不仅仅是与用户相关的托儿所。然后显示childcareinfo表中第一条记录的信息,而不是相关的托儿所。我研究并尝试了下面列出的查询,但我被告知存在语法错误。
SELECT *
FROM 'users' JOIN 'childcareinfo'
ON 'childcareinfo'.'ChildcareID' = 'users'.'ChildcareID'
Where 'users'.UserName' = $_SESSION[user]'
提前非常感谢你。这是本网站的唯一一站,并持续了三个星期。我需要帮助来跳过这个障碍。干杯!
答案 0 :(得分:0)
我会用这种方式重写你的第二个查询:
SELECT *
FROM users JOIN childcareinfo
ON childcareinfo.ChildcareID = users.ChildcareID
Where users.UserName = "$_SESSION['user']"
无论如何请注意你在这里输了一个拼写错误:
Where 'users'.UserName' = $_SESSION[user]'
你应该写的:
Where 'users'.'UserName' = "$_SESSION['user']"
实际上你应该使用'或'来包装你传递给数据库的字符串,而不是表/列名。还有数组(比如$ _SESSION),如果你在关联数组中引用一个键,你需要用'包装它' '。只有索引可以没有。
最后但并非最不重要的是,您正在执行一个MYSQL查询,该查询独立于您用于访问mysql的工具(PHPMYADMIN)或您编写代码的IDE(DREAMWEAVER)