Maison >développement back-end >tutoriel php >Comment puis-je récupérer en toute sécurité des données de MySQL à l'aide des instructions préparées PHP et des paramètres d'URL ?

Comment puis-je récupérer en toute sécurité des données de MySQL à l'aide des instructions préparées PHP et des paramètres d'URL ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-21 12:17:10537parcourir

How Can I Securely Fetch Data from MySQL Using PHP Prepared Statements and URL Parameters?

Création d'instructions préparées MySQL sécurisées en PHP

Fortifier les requêtes MySQL contre les entrées malveillantes est crucial pour maintenir l'intégrité des données et prévenir les attaques par injection SQL. Les instructions préparées offrent un mécanisme efficace pour y parvenir en nettoyant les entrées utilisateur entrantes.

Dans votre cas spécifique, vous souhaitez récupérer les colonnes d'une table en utilisant les informations dérivées des paramètres d'URL. Pour sécuriser cette requête, nous pouvons utiliser des instructions préparées comme suit :

$db = new mysqli("host","user","pw","database");
$stmt = $db->prepare("SELECT * FROM mytable WHERE userid=? AND category=? ORDER BY id DESC");
$stmt->bind_param('ii', intval($_GET['userid']), intval($_GET['category']));
$stmt->execute();

Cette instruction accomplit les tâches suivantes :

  • Prépare une requête SQL paramétrée.
  • Lie les paramètres GET en nombres entiers sûrs, empêchant l'injection SQL.
  • Exécute le

En ce qui concerne les améliorations potentielles de la vitesse, les instructions préparées améliorent généralement les performances dans les scénarios avec des requêtes répétitives. Cependant, pour une utilisation occasionnelle sur une seule page, l'impact peut être négligeable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn