小编Nin*_*ino的帖子

如何将此PDO代码转换为MySQLi?

我对PHP和MySQL还是很陌生,我尝试学习如何将代码从PDO更改为MySQLi。它与我在网上找到的登录系统有关的“记住我”功能以及一个安全令牌和标识符。我想学习并了解如何将代码从PDO更改为MySQLi。我知道在MySQLi中有一条创建和准备语句,我也必须绑定参数并执行。但是在这种情况下,我还是不知道如何开始。

$pdo = new PDO('mysql:host=localhost;dbname=dbname', 'root', '');
if (!isset($_SESSION['id']) && isset($_COOKIE['identifier']) &&
isset($_COOKIE['securitytoken'])) {
    $identifier = $_COOKIE['identifier'];
    $securitytoken = $_COOKIE['securitytoken'];

    $statement = $pdo->prepare("SELECT * FROM securitytokens WHERE identifier = ?");
    $result = $statement->execute(array($identifier));
    $securitytoken_row = $statement->fetch();

    if (sha1($securitytoken) !== $securitytoken_row['securitytoken']) {
        die('Maybe a stolen securitytoken.');
    } else {
        //Token was correct
        //Set an new token
        $neuer_securitytoken = random_string();
        $insert = $pdo->prepare("UPDATE securitytokens SET securitytoken = :securitytoken WHERE identifier = :identifier");
        $insert->execute(array('securitytoken' => sha1($neuer_securitytoken), 'identifier' => $identifier));
        setcookie("identifier", $identifier, time() + …
Run Code Online (Sandbox Code Playgroud)

php mysqli pdo

-5
推荐指数
1
解决办法
62
查看次数

标签 统计

mysqli ×1

pdo ×1

php ×1