PHP и MySQL проверяют базу данных, если данные введены, вопрос

0

Мне было интересно, как я могу проверить, нет ли тегов, введенных в базу данных для определенного сообщения, если их нет, отобразите no tags have been entered. Как это сделать с помощью PHP?

Вот мой код 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'];
    }
}
Теги:

3 ответа

1

Если массив тегов пуст, то нет тегов:

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

Вы также можете проверить количество возвращаемых строк:

if(mysqli_num_rows($dbc) == 0){
   echo 'no tags have been entered.';
}
  • 0
    это не работает по какой-то причине?
  • 0
    Вы запросили ошибку? Где вы положили коды?
Показать ещё 1 комментарий
0

$( "signup_name_image." ) Скрыть();.

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
    Вы задаете вопрос или отвечаете на вопрос?
  • 0
    задавать вопрос
Показать ещё 1 комментарий
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
    по какой-то причине это тоже не работает?
  • 0
    Можете ли вы сказать, какую ошибку вы получаете?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню