当table2 id匹配table1 id并且table2 tagid匹配table3 tagid时,SQL从table1中选择all

时间:2014-09-30 20:26:20

标签: php mysql sql ajax

我正在创建一些练习PHP和MySQL的博客。

我使用这个ajax将数据发送到PHP脚本:

<script type="text/javascript">
    $(document).ready(function(){
        function search(){
            var tag=$("#tagSearch").val();
            var tags=$("#tags").val();
            if(tag!=""){
                //$("#tagHolder").html();
                $.ajax({
                   type:"post",
                    url:"gettag.php",
                    data:{tag:tag},
                    success:function(data){
                        $("#tagHolder").append(data);
                        $("#tagSearch").val("");
                    }
                });
            }
            if(tags != ""){
                $.ajax({
                   type:"post",
                    url:"getposts.php",//it do get to here
                    data:{tags:tags},
                    success:function(data){
                        $("#recipeHolder").append(data);
                    }
                });
            }
        }

        $("#tagenter").click(function(){
            search();
        });

        $('#tagSearch').keyup(function(e){
            if(e.keyCode == 13){
                search();
            }
        });
    });
</script>

它确实到达了我在ajax中发表评论的地方。然后它在PHP脚本中的SQL上失败了:

$tags = mysqli_real_escape_string($con, $_POST["tags"]);

$results = mysqli_query($con, SELECT * FROM posts INNER JOIN post_tags ON posts.post_id = post_tags.post_id INNER JOIN tags ON posts.post_tags = tags.tag_id"); //Here it fails
$found = mysqli_num_rows($results);//This one results in error because it expects 1 but gets nothing

if($found > 0){
    while($row=mysqli_fetch_array($result)){
        echo '<div class="tags">'. $row['tag'] . "</div>";
    }
}
mysqli_close($con);
?>

我在php脚本中做了一些评论,这样你就可以在发出错误之前看到它的位置。

我需要查找post表中的所有帖子,其中表post_tags(包含postid(int值)和posttag)id等于post表id,post_tags posttag等于table tags id。

0 个答案:

没有答案