我一个评论系统中,我会想从两个表中提取信息的工作,问题是从第一个查询(被发现的ID)的结果影响第二次查询的输出。我的桌子是这样的。PHP连接MySQL查询
成员
标识,名字,姓氏,电子邮件,密码,Img_url,Activation_No,激活和日期
帖子
帖子ID,电子邮件,文本,ForumId,DatePosted,好恶
我正在使用的代码是;
<?php
// retrive post
include('php/config.php');
include ('php/function.php');
// retrive comments with post id
$stmt = $mysqli->prepare("SELECT (posts.Email,posts.Text) FROM posts WHERE posts.ForumId = '$forumId' LEFT JOIN SELECT (members.Img_url) FROM members WHERE members.Email = (posts.Email)");
$stmt->execute();
$stmt->bind_result($PostId,$Email,$Text,$ForumId,$DatePosted,$Likes,$Dislikes,$usr_img);
$stmt->fetch();
print "<div class=comment-item>";
print "<div class=comment-avatar>";
print "<img src=".$usr_img."alt=avatar>";
print "</div>";
print "<div class=comment-post>";
print "<h4>" .$Email. "<span> said....</span></h4>";
print "<p>" .$Text. "</p>";
print "</div>";
print"</div>";
$stmt->close();
?>
我收到的错误信息是;
Fatal error: Call to a member function execute() on a non-object in C:\Users\PC\Documents\XAMPP\htdocs\post.php on line 90
手动运行查询(通过mysql界面,或通过控制台),并做错误? –
您的查询是错误的,谷歌MySQL左连接正确的语法。当你修复你的查询时,致命错误将被单独修复 – CodeBird