Php 错误:未知列';joinedactivities.searchact id=searchact.id';在';关于第'条;
我不断收到此错误:“on子句”中的未知列“joinedactivities.searchact id=searchact.id”。我已经检查了表名并尝试更改它,但我不断出错 我有桌子: joinedactivities-id、用户id(外键)、searchact id(外键) searchact id、邮政编码、lat、long、爱好、地点 我正试图从外键searchact id显示表searchact中的行Php 错误:未知列';joinedactivities.searchact id=searchact.id';在';关于第'条;,php,html,mysql,sql,Php,Html,Mysql,Sql,我不断收到此错误:“on子句”中的未知列“joinedactivities.searchact id=searchact.id”。我已经检查了表名并尝试更改它,但我不断出错 我有桌子: joinedactivities-id、用户id(外键)、searchact id(外键) searchact id、邮政编码、lat、long、爱好、地点 我正试图从外键searchact id显示表searchact中的行 $user=$_SESSION['id']; $sql ="SELECT * FRO
$user=$_SESSION['id'];
$sql ="SELECT * FROM `joinedactivities` JOIN `searchact` ON `joinedactivities.searchact id = searchact.id` WHERE `user id`=$user ";
$result = mysqli_query($conn, $sql)or die("Error: ".mysqli_error($conn));
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
// output data of each row
echo "Hobby : " . $row["searchact id"];
}
} else {
echo "You have not joined any groups";
}
背景标记包含数据库对象。因此,您告诉查询引擎,整个对象是一个对象(在本例中是一列): 我认为您没有名为
joinedactivities.searchact id=searchact.id
的列,因此查询失败。(即使您有一个名为that的列,它仍然是一个不完整的ON子句。)在backticks中包含单个数据库对象:
`joinedactivities`.`searchact id` = `searchact`.`id`
您的反勾号不正确:
`joinedactivities.searchact id = searchact.id`
^--------------------------------------------^
您已将整个字符串转换为单个标识符。你可能想要更像
`joinedactivities`.`searchact_id` = `searchact`.`id`
请注意,这些标识符中没有一个是保留字,这意味着根本不需要反勾号。您的代码是正确的,但有一个轻微的错误-错误的反勾号。使用下面的代码
$user=$_SESSION['id'];
$sql ="SELECT * FROM `joinedactivities` JOIN `searchact` ON `joinedactivities`.`searchact id` = `searchact`.`id` WHERE `user id`=$user ";
$result = mysqli_query($conn, $sql)or die("Error: ".mysqli_error($conn));
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
// output data of each row
echo "Hobby : " . $row["searchact id"];
}
} else {
echo "You have not joined any groups";
}
希望这对您有所帮助为什么要在
searchact id
列中添加下划线?只是在更正时犯了一个小错误,感谢+1的回答看起来searchact id
可能确实有一个空格(您将其更改为下划线),然后需要反勾。(请注意查询后面的用户id
列。)
$user=$_SESSION['id'];
$sql ="SELECT * FROM `joinedactivities` JOIN `searchact` ON `joinedactivities`.`searchact id` = `searchact`.`id` WHERE `user id`=$user ";
$result = mysqli_query($conn, $sql)or die("Error: ".mysqli_error($conn));
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
// output data of each row
echo "Hobby : " . $row["searchact id"];
}
} else {
echo "You have not joined any groups";
}