Question

Quelqu'un pourrait-il me donner des exemples de la façon d'utiliser des requêtes paramétrées avec MySQL / PHP s'il vous plaît?

Était-ce utile?

La solution

Une requête paramétrée est essentiellement une requête qui fait abstraction de distance toutes les entrées. Cela a plusieurs bons effets secondaires, comme la fabrication de tous inoffensifs entrée (ie. Pas d'injections nocives sont possibles) et de le rendre plus rapide lorsqu'il est utilisé de façon répétée, car il est pré-analysé et compilé, de sorte que le moteur sait comment appliquer l'entrée donnée. Un exemple en mysql pur est la suivante:

PREPARE qry FROM "INSERT INTO tbl VALUES (?)";

La déclaration est maintenant compilé et mis en mémoire cache, et peut être exécuté à plusieurs reprises sans avoir à recompiler et interpréter:

SET @var = "some input";
EXECUTE qry USING @var;
SET @var = "some other input";
EXECUTE qry USING @var;

Quand il est utilisé en PHP, il est généralement comme ceci (raccourci):

$stmt = prepare('INSERT INTO tbl VALUES(?)');
execute($stmt, array("some input"));
execute($stmt, array("some other input"));
execute($stmt, array("some more input"));

Autres conseils

PREPARE stmt_name FROM "SELECT name FROM Country WHERE code = ?";

SET @test_parm = "FIN";

EXECUTE stmt_name USING @test_parm;

Source: MySQL Dev: commandes préparées

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top