REQUETE MySQL
Résolu
Bonjour Jordane,
Suite au dernier message, je te refait donc une question sur ma rapport Requete SQL.
Comme tu m'as mis sur la voie, j'ai inversé ma sélection en remplaçant :
par :
Il reste que je n'ai toujours pas bien compris pourquoi tu fais appel à la variable $datas, et comment elle marche.
Peux tu expliquer stp?
Merci d'avance.
JC
Suite au dernier message, je te refait donc une question sur ma rapport Requete SQL.
Comme tu m'as mis sur la voie, j'ai inversé ma sélection en remplaçant :
$[/sql/sqlintro.php3 sql] .= !empty($condition)? ' WHERE . $condition :"";
par :
$sql .= !empty($condition)? ' WHERE NOT (' . $condition .')':"";
Il reste que je n'ai toujours pas bien compris pourquoi tu fais appel à la variable $datas, et comment elle marche.
Peux tu expliquer stp?
Merci d'avance.
JC
$datas = array();
foreach($VR as $VRn => $VRn_value){
if($VRn_value !== ""){
$concat = $concat. 'AND '.$VRn. ' = :' .$VRn.' ';
$datas[":" .$VRn] = $VRn_value;
};
};
$condition = ltrim($concat,"AND");
//--------------------------------------------------------------------------//
// REQUETE
//--------------------------------------------------------------------------//
$sql = 'SELECT id FROM cutting_tools_01 ';
$sql .= !empty($condition)? ' WHERE NOT (' . $condition .')':"";
try{
$requete = $connexion->prepare($sql); // A corriger en fonction du contenu de ton fichier cnxbdd.php
$requete->execute($datas);
$resultat = $requete->fetchAll(PDO::FETCH_ASSOC);
}catch(PDOException $e){
echo 'ECHEC : ' .$e->getMessage();
}
Configuration: Windows / Opera Next 67.0.3575.137
1 réponse
-
ModérateurLe data sert a passer les variables à la requête.
Interesse toi aux requêtes préparées en pdo pour mieux comprendre.
-
-
Modérateur@JC_8280C'est dans l'exemple que je t'avais donné ( le lien pour gérer les erreurs pdo )
//préparation de la requête et des variables $sql = "INSERT INTO matable (champ1,champ2) VALUES (:valeur1,:autrevaleur)"; $datas = array(':valeur1'=>$valeur1, ':autrevaleur'=>$toto); // les variables à utiliser pour ta requête //Execution de la requete try{ $requete = $bdd -> prepare($sql) ; $requete->execute($datas) ; }catch(Exception $e){ // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); echo " Les datas : " ; print_r($datas); }
-