INSERT qui ne fonctionne pas sans message d'erreur..

Résolu
Legrandfifou Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -  
Legrandfifou Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je travaille actuellement sur mon site web et cependant j'éprouve un problème qui je suis sur est tout bête mais que je n'arrive malheureusement pas a résoudre par moi même

Voici mon code :

$pseudo_demander_verif = $donnees2['pseudo'];
																$titre = 'Avertissement';
																$message = !empty($_POST['message']) ? $_POST['message'] : NULL;


																if($pseudo_demander == $pseudo_demander_verif)
																{
																		try 
														
																		{
																			$sql_test = $bdd->prepare("INSERT INTO messagerie(titre, message, expediteur, receveur) VALUES ('$titre', '$message','$pseudo', '$pseudo_demander')");

																		echo 'ok' . $titre, $message, $pseudo, $pseudo_demander .'';

																	     }
																		catch (Exception $e)
																		 {
																		    echo 'Erreur : '.$e->getMessage();
																		}
																}
																else
																{
																	echo 'pas ok';
																}


Voila donc je cherche a insérer dans ma table messagerie les données ci dessus mais pas moyen il n'insère rien sans message d'erreur malgré que j'ai rajouté try - catch autour de ma fonction .. J'ai essayé de 'débuger' et il maffiche bien toute les infos et le if est bien accepter car il écris aussi "ok" comme préciser ici

try 
														
																		{
																			$sql_test = $bdd->prepare("INSERT INTO messagerie(titre, message, expediteur, receveur) VALUES ('$titre', '$message','$pseudo', '$pseudo_demander')");

																		echo 'ok' . $titre, $message, $pseudo, $pseudo_demander .'';

																	     }
																		catch (Exception $e)
																		 {
																		    echo 'Erreur : '.$e->getMessage();
																		}


Voilà, ça m'énerve d'ouvrir un sujet pour ça car je suis sur que l'erreur est toute bête :( Merci à ceux qui m'aideront..
A voir également:

1 réponse

Utilisateur anonyme
 
Bonjour

L'instruction
$sql_test = $bdd->prepare...
ne fait que créer une requête préparée. Il reste à l'exécuter avec
$sql_test->execute();
.

D'ailleurs, il aurait été nettement préférable de faire une requête préparée avec des paramètres et execute avec un tableau associatif pour ces paramètres. Relis le manuel PDO.
http://php.net/manual/fr/pdo.prepared-statements.php
0
Legrandfifou Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   5
 
Oui j'avais fais avec un tableau avant array() et j'avais fait un try { prepare +execute ) mais ca ne marchais pas non plus je vais ré-essayer on verra :) Je te tiens au jus.
0
Legrandfifou Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   5
 
J'ai refais tout le code de A à Z et ca fonctionne, franchement parfois je me demande si je devrais pas éteindre mon cerveau et rallumer , je sais pas ce qui a causé le problème du coup mais c'est résolu :/
0