我必须将questions.id的值作为qid传递。 我无法使用以下代码获得所需的结果。而不是采取' id' QUESTIONS表的值,它取的是' id' USERS表的值,以及产生错误输出的产品。
$query = "
SELECT *
, q.id qid
FROM questions q
JOIN users u
ON u.id = q.userid
WHERE type = 'technical'
ORDER
BY date
, time DESC
";
$result = mysqli_query($conn,$query);
while ($row = mysqli_fetch_array($result)) {
$id = $_SESSION['id'];
$ques=$row['question'];
$user = $row['username'];
echo strtoupper($user);
echo "<a href='allview.php?qid=$row[id]' class='class4'> $ques </a>";
}
?>
答案 0 :(得分:0)
此代码:
$id = $_SESSION['id'];
指id
中的select
列。 id
来自用户表。
您已将问题ID重命名为qid
,因此请尝试:
$qid = $_SESSION['qid'];
建议:只获取您实际要使用的列:
SELECT u.username, q.id as qid
FROM questions q JOIN
users u
ON u.id = q.userid
WHERE type = 'technical'
ORDER BY date, time DESC;
*
在调试时非常方便,但由于基础表结构发生变化,代码可能会在某些时候出现意外行为。
答案 1 :(得分:0)
尝试使用此代码
$query = "
SELECT *
, q.id AS qid,
q.id AS id
FROM questions q
答案 2 :(得分:0)
尝试使用此
$query = "
SELECT *
, questions.id qid
FROM questions q
, users u
WHERE q.userid = u.id
AND type = 'technical'
ORDER
BY date
, time DESC
";