Requête Mysql qui ne fonctionne pas mais pas d'erreur renvoyée.
Xentor
-
Xentor -
Xentor -
Bonjour,
Je fais appel à vos services car j'ai un soucis que j'ai du mal à comprendre.
Tout d'abord mon code :
Ma dernière requête 'req4' fonctionne correctement si on passe avant par la 'req2' avant via la conditions, mais ne fonctionne pas si la conditions est vrai (si flag_adresse est égal à 'add_adresse). En revanche la requête 'req' s'exécute parfaitement.
Aucun messages d'erreur n'est renvoyé et je commence à perdre la tête.
Si quelqu'un aurait une idée, je lui en serai vraiment reconnaissant.
Merci de votre aide.
Nico
Je fais appel à vos services car j'ai un soucis que j'ai du mal à comprendre.
Tout d'abord mon code :
if($flag_adresse=='add_adress'){
// Insertion de l'adresse si nouvelle adresse à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO infos_users (id_user, nom_adresse, prenom, nom, numero, rue, code_postal, ville, complements, mail) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
$req->execute(array(
$id_annonceur,
$intitule_adresse,
$prenom,
$nom,
$numero,
$rue,
$code_postal,
$ville,
$complements,
));
$req->closeCursor(); // Termine le traitement de la requête
}
else{
$req2 = $bdd->query('SELECT * FROM infos_users WHERE nom_adresse = "'.$flag_adresse.'"');
while($data2 = $req2->fetch())
{
$prenom = $data2['prenom'];
}
$req2->closeCursor(); // Termine le traitement de la requête
}
//récupération de l'id de l'adresse associé à l'annonce
$req3 = $bdd->query('SELECT * FROM infos_users WHERE nom_adresse = "'.$flag_adresse.'" AND id_user = "'.$id_annonceur.'"');
while($data3 = $req3->fetch())
{
$id_adresse = $data3['id'];
}
$req3->closeCursor(); // Termine le traitement de la requête
// Insertion de l'annonce à l'aide d'une requête préparée
$req4 = $bdd->prepare('INSERT INTO annonces (id_annonceur, type, categorie, description, url_photo, duree, prenom, prix, id_adresse, ville_adresse) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
$req4->execute(array($id_annonceur, $type, $categorie, $description, $url_photo, $duree, $prenom, $prix, $id_adresse, $ville_adresse));
$req4->closeCursor(); // Termine le traitement de la requête
Ma dernière requête 'req4' fonctionne correctement si on passe avant par la 'req2' avant via la conditions, mais ne fonctionne pas si la conditions est vrai (si flag_adresse est égal à 'add_adresse). En revanche la requête 'req' s'exécute parfaitement.
Aucun messages d'erreur n'est renvoyé et je commence à perdre la tête.
Si quelqu'un aurait une idée, je lui en serai vraiment reconnaissant.
Merci de votre aide.
Nico
A voir également:
- Requête Mysql qui ne fonctionne pas mais pas d'erreur renvoyée.
- Mysql community server - Télécharger - Bases de données
- Erreur 0x80070643 - Accueil - Windows
- Iptv erreur de lecture - Forum TV & Vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
4 réponses
Salut,
Tu devrais essayer d'ajouter le code ci-dessous pour afficher les éventuelles erreurs de synthaxe ou autre sous ton prepare de la requête 4 et tu pourrais aussi mettre ton tableau de valeur pour la requête 4 dans une variable pour faire un var_dump() dessus histoire de voir si toute tes variables sont OK.
Dis nous ce que te renvois ce code.
Tu devrais essayer d'ajouter le code ci-dessous pour afficher les éventuelles erreurs de synthaxe ou autre sous ton prepare de la requête 4 et tu pourrais aussi mettre ton tableau de valeur pour la requête 4 dans une variable pour faire un var_dump() dessus histoire de voir si toute tes variables sont OK.
if (!$req4) {
echo "PDO::errorInfo():";
print_r($bdd->errorInfo()); // Remplace $bdd par ton instance PDO
}
$params = array($id_annonceur, $type, $categorie, $description, $url_photo, $duree, $prenom, $prix, $id_adresse, $ville_adresse);
var_dump($params);
$req4->execute($params);
Dis nous ce que te renvois ce code.
Tout d'abord merci pour ton retour.
Voici ce que me renvoi le var dump et appremment il y aurai donc une erreur a la récupération de 'id_adresse' qui est NULL.
Est-il possible que cette requête s'execute avt que celle précédente ne soit terminée ?
Si oui comment faire?
Merci beaucoup
array(10) { [0]=> string(1) "1" [1]=> string(7) "produit" [2]=> string(5) "Tabac" [3]=> string(6) "clopes" [4]=> string(36) "../images/produits/produit_tabac.png" [5]=> string(19) "2015-10-07 20:30:09" [6]=> string(7) "Nicolas" [7]=> string(2) "60" [8]=> NULL [9]=> string(5) "Paris" }
Voici ce que me renvoi le var dump et appremment il y aurai donc une erreur a la récupération de 'id_adresse' qui est NULL.
Est-il possible que cette requête s'execute avt que celle précédente ne soit terminée ?
Si oui comment faire?
Merci beaucoup