Php 检查数组键和数组值
我想建立一个登录系统,但在本例中,我想创建一个数组作为用户名和密码Php 检查数组键和数组值,php,arrays,Php,Arrays,我想建立一个登录系统,但在本例中,我想创建一个数组作为用户名和密码 <?php $users = array( "user1" => "pass" , "user2" => "2" , "user3" => "pass3d" ); if ( isset($_POST['sb']) ) { $username = $_POST['user']; $password = $_POST['pass']; /* foreach ($users as $user =>
<?php
$users = array(
"user1" => "pass" ,
"user2" => "2" ,
"user3" => "pass3d"
);
if ( isset($_POST['sb']) ) {
$username = $_POST['user'];
$password = $_POST['pass'];
/*
foreach ($users as $user => $pass ) {
if ( $username == $user && $password == $pass ) {
echo 'login';
header("Location: ?page=admin");
}
else {
echo 'failed';
$_SESSION = array();
header("Location: ?dologin");
}
}
*/
?>
正如你们所看到的,我并没有使用数据库,我在数组中创建了用户名和密码,我需要检查它是否登录
用foreach做这件事不是个好主意
它与foreach一起工作,但如果登录失败,我想销毁会话,所以如果用户输入第三个密钥和值,sesseion将被销毁
我试图在数组中使用,但我做不到
比较用户名和密码的最佳方法是什么?首先,我不会以明文形式保存这些密码。
循环可能不是最好的方式,我会这样想:
<?php
$array1 = array(
"1" => "Monday",
"2" => "Tuesday",
"3" => "Wednesday"
);
?>
<?php
$var1 = $_POST['index'];
$var2 = $_POST['day'];
if (array_key_exists($var1, $array1))//if key exists in the array
{
if ($var2 == $array1[$var1])//if the day matches the value of the key in the array
{
//Do something
}
}
?>
参考: