首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Slim php框架3在争论中传递电子邮件不起作用

Slim php框架3在争论中传递电子邮件不起作用
EN

Stack Overflow用户
提问于 2017-01-17 19:35:27
回答 2查看 293关注 0票数 0

我与瘦PHP框架3有一个错误。

“在此服务器上找不到所请求的资源/try/foo@bar.com/secret。”

我是新的苗条PHP框架。当我输入电子邮件地址"foo@bar“和密码”机密“时,它会产生一个空白错误(即"")。当我输入电子邮件地址"baz“和密码"secret2”时,它就不会产生错误消息。

我基本上是在为Android制作web服务,用户将输入一个电子邮件地址和密码,所需的查询将以JSON格式返回。

代码语言:javascript
复制
$app - > get('/try/{email}/{password}', function($request, $response, $args) {
    include_once('db.php');




    $email = $request - > getAttribute('email');
    echo $email;
    $password = $request - > getAttribute('password');
    echo $password;

    $sql = "select * from user where email='$email' and password='$password'";
    echo $sql;
    $result = mysqli_query($con, $sql);

    if (mysqli_num_rows($result) > 0) {
        // output data of each row
        $data[] = mysqli_fetch_assoc($result);
        header('Content-Type:application/json');
        echo json_encode($data);

    } else {
        echo "0 results";
    }

    mysqli_close($con);

});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-18 13:43:33

@不是url中的有效字符:(参见https://stackoverflow.com/a/1856809/1172363)

你必须用用户编码的电子邮件值创建你的链接..。

代码语言:javascript
复制
$app->urlFor("your_route_name", array("email" => urlencode($mail), "password" => urlencode($password));

在您的情况下,应该是(例如):

pass

票数 1
EN

Stack Overflow用户

发布于 2018-12-03 01:52:14

实际上,我通过使用Base64逻辑对参数进行编码来解决这个问题。

btoa(标准)

在端点(我的是PHP)中,我执行了一个base64decode操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41705504

复制
相关文章

相似问题

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