我正在尝试验证信用卡号输入至少为16个数字。我的代码似乎不起作用。我对自己的语法不太自信。有什么帮助吗?...谢谢。
<form name="ccard" action="validate.php" method=post>
CC Type
<select name="cc_type">
<option value="mc">Master Card</option>
<option value="visa">Visa</option>
</select><br>
Creditcard number:
<input type=number name="ccard_num" value="num"><br>
Exp Year:
<input><br>
Exp Month:
<input>
</form>
php code
<?php
$cc_length = $_POST['ccard_num'];
if (strlen( $cc_length == 15) {
echo "Valid";
}
elseif (strlen($cc_length != 15) {
echo "Invalid entry";
}
?>
答案 0 :(得分:1)
strlen
返回字符串的长度。您需要比较此函数的返回值。
现在,您将字符串值与数字进行比较,然后将此布尔值传递给strlen
函数。
将您的代码更改为:
<?php
$cc_length = $_POST['ccard_num'];
if ( strlen($cc_length) == 15 ) {
echo "Valid";
}
elseif ( strlen($cc_length) != 15 ) {
echo "Invalid entry";
}
?>
答案 1 :(得分:-1)
您的IF条件,没有右括号,非常明显。