PHP에서 데이터베이스 작업할 때 SQL 인젝션을 방지하기 위해 PDO를 사용하라고 들었는데, 구체적인 사용법을 알고 싶습니다.
현재 mysql_query()를 쓰고 있는데 PDO로 전환하려면 어떻게 해야 하나요?
// 기존 위험한 코드
$result = mysql_query("SELECT * FROM users WHERE id = " . $_GET['id']);
이런 코드를 PDO로 안전하게 바꾸는 방법을 알려주세요.
PHP에서 데이터베이스 작업할 때 SQL 인젝션을 방지하기 위해 PDO를 사용하라고 들었는데, 구체적인 사용법을 알고 싶습니다.
현재 mysql_query()를 쓰고 있는데 PDO로 전환하려면 어떻게 해야 하나요?
// 기존 위험한 코드
$result = mysql_query("SELECT * FROM users WHERE id = " . $_GET['id']);
이런 코드를 PDO로 안전하게 바꾸는 방법을 알려주세요.
댓글 3
```php
$pdo = new PDO("mysql:host=localhost;dbname=test", $user, $pass);
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id");
$stmt->execute([":id" => $_GET["id"]]);
$user = $stmt->fetch();
```
이렇게 하면 SQL 인젝션을 원천 차단할 수 있습니다.