albumID入力が大文字の2文字と3つの数字であることを検証する必要があります。私はこのregex preg_match大文字のアルファベットとアルファベットのalbumIDを一致させることができません。
preg_match('/([A-Z]{2}[0-9]{3})/', $albumid)
が動作する必要があることを確認するためにhttp://regexr.com/ともhttp://www.tutorialspoint.com/php/php_preg_match.htmを使用しますが、そうではありません:あなたは、あなたを$albumid
空作っている
$albumidErr = $albumid = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (preg_match('/([A-Z]{2}[0-9]{3})/', $albumid))
:あなたのコードで
<?php
// define variables and set to empty values
$albumidErr = $albumid = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (preg_match('/([A-Z]{2}[0-9]{3})/', $albumid))
{
$albumid = test_input($_POST["albumid"]);
$albumidErr = print $albumid;
}
else {
$albumidErr = " Album ID must be 2 Uppercase letters and 3 numbers (i.e. BI010)";
}
}
?>
<form method="post" action="
<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<p>
<label for="albumid">*Album ID:</label>
<?php echo $albumidErr;?><br>
<input type="text" name="albumid" id="albumid"/>
</p>
<p>
<input type="submit" name="submit" id="submit" value="submit"/>
</p>
</form>
[その正しくない – rock321987
可能な重複が少なくとも3をチェックするための正規表現を必要とするので、それは動作しません大文字、3小文字、3桁および3特殊文字](http://stackoverflow.com/questions/16689167/need-regular-expression-for-checking-at-least-3-uppercase-3-lowercase-3-digits ) – rock321987
あなたが正確な仕様/要件を提供し、あなたの正規表現dあなたは働かなくてはなりません。あなたのコードでは、 'BI010'の例を提供しますが、' [A-Z] {2} [0-9] {3} 'とマッチします。あなたは*全体の文字列*(完全な文字列の一致)としてそれを一致させますか? [** PHP preg_match full string **](http://stackoverflow.com/questions/16375856/php-preg-match-full-string)を参照してください。 –