首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我想打印关联数组值。

我想打印关联数组值。
EN

Stack Overflow用户
提问于 2019-10-17 17:43:50
回答 2查看 48关注 0票数 0

我正在做作业,这包括一个基本的验证用户和密码的php。我有一个一维关联数组。当条件为真时,我可以打印值,但我不能只打印一个“one”,因为"if“在foreach中。

php的内容:

代码语言:javascript
运行
复制
<?php 

    $error = 0;
    $mensajeError = "";

    $login = array('pepe' => 'pepon', 'maria' => 'mary', 'manolo' => 'manolito');

    if (!isset($_POST['user']) || $_POST['user'] == "") {
        $error++;
        $mensajeError .= "El usuario no puede quedar vac&iacute;o";
    }


    if (!isset($_POST['pass']) || $_POST['pass'] == "") {
        $error++;
        $mensajeError .= "<p>La contraseña no puede quedar vac&iacute;a</p>";
    }

    if ($error > 0)
    {
        echo $mensajeError;
    }

    else
    {

        $user = $_POST['user'];
        $pass = $_POST['pass'];
        foreach ($login as $clave => $valor) 
        {

            if ($user == $clave && $pass == $valor) {
                $user = $clave;
                $pass = $valor; 
                echo "Hola " . $user . ", bienvenido a la aplicación";
            }

            if ($user != $clave && $pass != $valor) {
                echo "Usuario y/o contraseña incorrectos";  
            }


        }



    }

?>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-17 18:01:21

根本不需要循环,您所需要做的就是检查是否有一个具有用户名的数组条目(使用isset()),而且该条目具有相同的密码.

代码语言:javascript
运行
复制
$user = $_POST['user'];
$pass = $_POST['pass'];
if (isset($login[$user]) && $pass == $login[$user]) {
    echo "Hola " . $user . ", bienvenido a la aplicación";
}
else    {
    echo "Usuario y/o contraseña incorrectos";
}
票数 1
EN

Stack Overflow用户

发布于 2019-10-17 17:49:06

这个答案具体解释了如何检查“任意”真值。在这个特定问题的例子中,检查单个匹配索引并使用该索引进行索引,Nigel Ren's answer更实用。

使用标志检查是否发生任何匹配,如果在foreach之后没有匹配,则拒绝:

代码语言:javascript
运行
复制
$user = $_POST['user'];
$pass = $_POST['pass'];
$success = False;

foreach ($login as $clave => $valor) 
{
    if ($user == $clave && $pass == $valor) {
        $success = True;
        echo "Hola " . $user . ", bienvenido a la aplicación";
    }
}

if (!$success) {
    echo "Usuario y/o contraseña incorrectos";  
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58438115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档