首页 > 解决方案 > 使用准备好的语句和 PDO 保护数据

问题描述

我需要通过 PHP 从<form>. 我的主要目标是发现保护数据的主要规则,这些数据从用户发送到服务器(例如从注入)。

所以,我正在考虑使用:
- PDO 代替 mysqli
- 准备好的语句
我是关于 PHP 和 Mysql 问题的初学者。我走对了吗?谢谢。

$connection = mysqli_connect('localhost', 'user', 'pass', 'db');

mysqli_set_charset($connection,"utf8");

if (!$connection)
{
    exit(mysqli_error());
}

$htmlResult = '';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {

    $name = $_POST['name'];
    $phone = $_POST['phone'];
    $email = $_POST['email'];

    $result = $connection->query("SELECT * FROM users WHERE email='".$email."'");

    if ($result->num_rows > 0) {
        $htmlResult = 'Email already taken';
    } else {
        $createUser = $connection->query("INSERT INTO users VALUES ('$name', '$phone', '$email', $connection->insert_id)");
        if ($createUser) {
            $htmlResult = 'Ok id is: '.$connection->insert_id;
        }
    }
}

echo $htmlResult;

标签: phpmysql

解决方案


推荐阅读