2010-08-29 51 views
0

我在想如何检查是否没有标签输入到特定帖子的数据库中,如果没有,显示no tags have been entered。我如何使用PHP来做到这一点?如果输入数据,PHP和MySQL检查数据库问题

这是我的PHP & MySQL代码。

$tag = array(); 
$dbc = mysqli_query($mysqli, "SELECT tags.tag 
        FROM posts_tags 
        INNER JOIN tags ON tags.id = posts_tags.tag_id 
        WHERE posts_tags.post_id = '" . $post_id . "' 
        GROUP BY tags.tag"); 

if (!$dbc) { 
    print mysqli_error($mysqli); 
} else { 
    while($row = mysqli_fetch_array($dbc)){ 
    $tag[] = $row['tag']; 
    } 
} 

回答

1

如果标签数组为空,则没有标签:

if(empty($tag)){ 
    echo 'no tags have been entered'; 
} 

你也可以检查的行数返回:

if(mysqli_num_rows($dbc) == 0){ 
    echo 'no tags have been entered.'; 
} 
+0

,这是不工作的一些原因? – leftout 2010-08-29 08:43:09

+0

您查询失败了吗?你把代码放在哪里? – Lekensteyn 2010-08-29 08:55:01

+0

这是我的数据库问题,我解决了这两个答案的工作。 – leftout 2010-08-29 08:56:38

0

使用mysqli_num_rows和这样的代码这个:

$tag = array(); 
$dbc = mysqli_query($mysqli, "SELECT tags.tag 
        FROM posts_tags 
        INNER JOIN tags ON tags.id = posts_tags.tag_id 
        WHERE posts_tags.post_id = '" . $post_id . "' 
        GROUP BY tags.tag"); 

if (!$dbc) 
{ 
    print mysqli_error($mysqli); 
} 
elseif(!mysqli_num_rows($dbc)) 
{ 
    echo "no tags have been entered"; 
} 
else 
{ 
    while($row = mysqli_fetch_array($dbc)) 
    { 
     $tag[] = $row['tag']; 
    } 
    print_r($tag); 
} 
+0

由于某种原因,这不起作用? – leftout 2010-08-29 08:44:47

+0

你能告诉你有什么错误吗? – shamittomar 2010-08-29 08:46:10

+0

什么都没有显示,我认为我现在看到的一方有问题。 – leftout 2010-08-29 08:48:27

0

$(“。signup_name_name_image”)。hide();

var error_signup_name = false; 

$(".signup_name").blur(function(){ 
    check_signup_name(); 
}); 

function check_signup_name() { 
    var signup_name = $.trim($('.signup_name').val()); 
    if (signup_name == '' || signup_name.length < 6 || signup_name.length > 50) { 
     $(".signup_name").css({"border":"1px solid #ff0000"}); 
     $(".signup_name_image").show(); 
     $(".signup_name_show").html("&#8226; Write Full Name in 6 to 50 alphabets"); 
     **$(".signup_name").focus();** 
     error_signup_name = true; 
    } else if (/^[a-zA-Z0-9- ]*$/.test(signup_name) == false){ 
     $(".signup_name").css({"border":"1px solid #ff0000"}); 
     $(".signup_name_image").show(); 
     $(".signup_name_show").html("&#8226; Contain invalid character"); 
     **$(".signup_name").focus();** 
     error_signup_name = true; 
    }else { 
     $(".signup_name").css({"border":"1px solid #21cc00"}); 
     $(".signup_name_image").hide(); 
    } 
} 

$("#signup_form").submit(function(){ 

    error_signup_name = false; 

    check_signup_name(); 

    if (error_signup_name == false) { 
     return true; 
    } else { 
     return false; 
    } 
}); 

$(".signup_name_image").hover(function(){ 
    $(".signup_name_show").show(); 
}, function() { 
    $(".signup_name_show").hide();} 
); 

现在重点是停留在同一领域 如何关注领域提交时

+0

你问这个问题还是回答这个问题? – mmushtaq 2016-11-25 17:00:13

+0

提问 – 2016-11-27 12:36:52

+0

然后这是不正确的地方提问。您可以使用[Ask Question](http://stackoverflow.com/questions/ask)按钮发布问题。 – mmushtaq 2016-11-27 17:18:13