Php MYSQL Innerjoin仅显示一条记录
我正忙于一个票务系统,我的问题在一个表中,用户信息在另一个表中,回答在另一个表中 我想要的是得到问题(表1),其中包含按用户ID列出的用户信息和所有回答(也包括按ID列出的用户信息) 现在我有以下代码:Php MYSQL Innerjoin仅显示一条记录,php,mysql,pdo,Php,Mysql,Pdo,我正忙于一个票务系统,我的问题在一个表中,用户信息在另一个表中,回答在另一个表中 我想要的是得到问题(表1),其中包含按用户ID列出的用户信息和所有回答(也包括按ID列出的用户信息) 现在我有以下代码: public function ticketSingle($id=""){ $sql = " SELECT ticketSubmitted.*, users.Name, users.email, users.phone, ticketResponse.* FROM ticketS
public function ticketSingle($id=""){
$sql = "
SELECT ticketSubmitted.*, users.Name, users.email, users.phone, ticketResponse.*
FROM ticketSubmitted
INNER JOIN users
ON users.id = ticketSubmittedUserId
JOIN ticketResponse
ON ticketId = ticketSubmittedID
WHERE ticketSubmittedID = '".$id."'
";
$result = $this->run($sql, $bind);
return $result[0];
}
表1=ticketSubmitted(问题,用户ID为“ticketSubmittedUserId”)表2=用户(用户信息)
表3=ticketResponse(包含反应的表) 但是如果我把结果打印出来,我只会得到一条股票反应的记录,我想要的是所有的反应 有人能帮我吗 这是函数返回的结果:
Array
(
[ticketSubmittedID] => 1
[ticketSubmittedUserId] => 1
[ticketSubmittedDate] => 2018-02-05 16:00:00
[ticketSubmittedTitle] => Question Title
[ticketSubmittedMessage] => Hello World!
[ticketSubmittedUserIp] => XXX.XXX.XXX.XXX
[ticketSubmittedStatus] => 1
[Name] => John Doe
[email] => john@doe.com
[phone] => 0612345678
[ticketResponseId] => 1
[ticketId] => 1
[ticketUserId] => 2
[ticketMessage] => Hello Reaction
[ticketDate] => 2018-02-05 17:05
[ticketIp] => XXX.XXX.XXX.XXX
)
您只返回第一行
return$result[0]结果的第一个索引中的代码>0。因此,您应该返回所有例如:
return $result;
并循环查看结果以管理您需要的内容
foreach($result as $key => $value){
echo $value['ticketResponseId'];
}
您可以使用
var_dump($result);
您只返回第一行return$result[0]结果的第一个索引中的代码>0。因此,您应该返回所有例如:
return $result;
并循环查看结果以管理您需要的内容
foreach($result as $key => $value){
echo $value['ticketResponseId'];
}
您可以使用
var_dump($result);
什么是$this
,或者更准确地说,$this->run()
返回的数组是什么?函数ticketingle()
仅返回该数组的第一个元素…您使用内部联接
和联接
,但它们是相同的。这本身不是问题,但这可能表明您在那里有误解,可能正在寻找另一种连接(可能是左连接)?哈哈,Meneer Aart,顺便说一句:o)哈哈,这是我的第二个名字;-)什么是$this
,或者更准确地说,$this->run()
返回的数组是什么?函数ticketingle()
仅返回该数组的第一个元素…您使用内部联接
和联接
,但它们是相同的。这本身不是问题,但这可能表明您在那里有误解,可能正在寻找另一种连接(可能是左连接)?哈哈,Meneer Aart,顺便说一句:o)哈哈,这是我的第二个名字;-)