HTML如何驗證「提供至少2個標籤,用逗號分隔」從標籤文本字段在PHP中?
<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; ?>">
腓
$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匹配您的正則表達式一個字符() '。避免在不需要時使用正則表達式,或者,如果您的代碼正常工作,請使用其他術語;爲什麼我只能輸入帶有-Z和0-9個字符的標籤?這是相當嚴格的。 –
但沒有'preg_match()'它會添加空格作爲第二個標籤,像這樣''Animal,[space]「' –