syntaxe sécurisée en pdo

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : syntaxe sécurisée en pdo

Re: syntaxe sécurisée en pdo

par stealth35 » 19 janv. 2011, 15:12

la 2eme puisque les requêtes préparées servent uniquement pour passer des paramètres, la y'en a pas donc pas besion, et un table n'est pas considéré comme un paramètre.
http://dev.mysql.com/doc/refman/5.0/fr/sqlps.html

Re: syntaxe sécurisée en pdo

par doud18 » 19 janv. 2011, 14:44

donc c'est mieux de faire ça :
<?php
$sql="select * FROM ".DB_TABLE_MEMBRE." WHERE id'";
$qid=$AUR->prepare($sql);
$qid->execute();
$row=$qid->fetch(PDO::FETCH_OBJ);
?>
que ça :
<?php
$sql=$AUR->query("select * FROM ".DB_TABLE_MEMBRE." WHERE id'");
while($row=$sql->fetch(PDO::FETCH_OBJ))
{
?>

Re: syntaxe sécurisée en pdo

par xTG » 19 janv. 2011, 14:25

La requête préparée sert à mettre en mémoire un traitement qui est souvent long et surtout répétitif.
Cela ferra gagner de la mémoire et du temps de calcul lors du prochain appel car la requête aura déjà été interprétée.

Re: syntaxe sécurisée en pdo

par doud18 » 19 janv. 2011, 13:18

Merci.

Est ce que tu peux m'expliquer la différence entre des requêtes préparés et des requêtes comme j'ai fait plus et qui fonctionne

Re: syntaxe sécurisée en pdo

par stealth35 » 19 janv. 2011, 13:15

ta pas besion de or die puisque t'es en exception il faut faire un try...catch

syntaxe sécurisée en pdo

par doud18 » 19 janv. 2011, 12:56

Bonjour, je suis débutant en php, et je voulais savoir si ces deux façon d'écrire le code est une bonne façon sécurisée :

<?php 
try 
{
   $AUR = new PDO('mysql:host='.$serveur.';port='.$port.';dbname='.$bdd, $user, $passwd);
	$AUR->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Obligatoire pour la suite
}


catch (PDOException $e) 
{	
 $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
    die($msg);

?>
}


et ensuiste dans mes autres pages quand je fait une requêt voila comment je fait :
<?php
$res=$AUR->query("SELECT * FROM ".DB_TABLE_PARAMETRE."") or die('Erreur : '.$e->getMessage());
foreach ($res as $donnees)
{
?>


Est ce qu'il y a besoin de remettre a la fin de chaque requete :
or die('Erreur : '.$e->getMessage());
Merci