我正在努力学习构建登录序列.在一个部分中,我想确定用户是否将3个必填字段中的任何一个留空:
foreach ( $_POST as $key => $value )
{
if ( $key = "school_code" ||
$key = "user_name" ||
$key = "password" )
{
if ( $value == "" )
{
$a_blank[] = $key ;
}
}
}
if( @sizeof( $a_blank ) > 0 )
{
echo '<pre>';
print_r( $a_blank );
echo '</pre>';
}
Run Code Online (Sandbox Code Playgroud)
如果用户没有为school_code或user_name输入任何内容,但是输入密码然后单击"提交",则结果为:
Array
(
[0] => 1
[1] => 1
)
Run Code Online (Sandbox Code Playgroud)
为什么数组结果不是这样的(即$ key的值)?
Array
(
[0] => school_code
[1] => user_name
)
Run Code Online (Sandbox Code Playgroud)
谢谢!
比较是与==,而不是=.
$key = "school_code" || $key = "user_name" || $key = "password"
Run Code Online (Sandbox Code Playgroud)
应该用==代替.你也可以用稍微冗长的方式写这个:
$options = array("school_code","user_name","password");
if (in_array($key, $options) && empty($value)) {
$a_blank[] = $key;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
155 次 |
| 最近记录: |