首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何安全地使用$_GET['id']通过选择html表行从数据库中获取详细信息

如何安全地使用$_GET['id']通过选择html表行从数据库中获取详细信息
EN

Stack Overflow用户
提问于 2019-03-01 00:23:15
回答 1查看 42关注 0票数 0

因此,我让这段工作代码单击一个链接,在输入文本框中显示来自数据库某一行的另一页的详细信息。

代码语言:javascript
复制
    <?php
            foreach ($allCentrifuge as $list) {
                $id = $list['id'];
                ?>
                <tr>
                    <td><?php echo $list['experiment'] ?></td>
                    <td><?php echo $list['project_name'] ?></td>
                    <td><?php echo $list['project_date'] ?></td>
                    <td><a href="../Views/user_centrifuge.php?id=<?php echo $list['id']?>">Details</a></td>
                </tr>
                <?php
            }
            ?>

和这个函数来获取这些详细信息:

代码语言:javascript
复制
    public function fetchCentrifuge()
    {

        $uid = $_GET['id'];

        try {

            $stmt = $this->dbconn->prepare("SELECT * FROM centrifuge WHERE id = ?");
            $stmt->execute(array($uid));
            return $stmt->fetchAll();
        }

因此,从我读过的所有主题来看,很明显,这对SQL注入是危险的。但是如何将这些代码与准备好的语句一起使用呢?我似乎不能用id占位符使它工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-01 00:32:30

看起来还不错。您还可以将输入var转换为INT。

代码语言:javascript
复制
(int)$_GET['id'] or intval($_GET['id'])
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54930120

复制
相关文章

相似问题

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