如何在PHP中验证标签文本字段的"provide at least 2 tags, separated by commas"?



html

<h3>Tags</h3>
<input <?php echo $err_st3; ?> type="text" name="tags" id="textfield" 
placeholder="Example: tag, another tag, hello tagging" value="
<?php echo @$tagsOK; ?>">

php

$tags=array();
$tagline = $_POST['tags'];
//TAGS
if(!empty($tagline)){
    $tokens = str_replace(' ', '', $tagline);
    $tags = explode(',',$tokens);
    $tags = array_unique($tags);
    foreach ($tags as $tag) {
        if(preg_match("/^[0-9a-zA-Z]$/",$tag) === 0) {
            // error    
        }
        else{
            echo $count_tags = $count_tags+1;
        }
    }
    if($count_tags <= 1){
        $error[]=" - Please provide at least 2 tags, separated by commas.";
        $err_st3 = $st;
    }
    $tagsOK = implode(', ',$tags);
}
else{
    $error[]=" - Please provide at least 2 tags, separated by commas.";
    $err_st3 = $st;
}

当我输入" A,B"之类的字母时,它将是有效的。

,但它没有验证诸如"车辆,角色,场景"之类的单词

,而不是做preg_match检查长度:

strlen($tag)==1

相关内容

最新更新