Question du test Cybersec pour les techs : renforcez vos bases

Comment se prémunir des injections SQL en PHP ?

Très facile

Identifier quel morceau de code présente une faille d'injection SQL :

Code A :

<?php
$pdo = new PDO('mysql:host=localhost;dbname=ma_base', 'utilisateur', 'mot_de_passe');

$id = $_GET['id'];

$sql = "SELECT * FROM utilisateurs WHERE id = " . $id;
$result = $pdo->query($sql);
?>

Code B :

<?php
$pdo = new PDO('mysql:host=localhost;dbname=ma_base', 'utilisateur', 'mot_de_passe');

$id = $_GET['id'];

$sql = "SELECT * FROM utilisateurs WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->execute();
?>
Auteur: Lucas JAHIERStatut : PubliéeQuestion passée 45 fois
Modifier
2
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !