Insertion

Petit nouveau ! | 7 Messages

26 sept. 2018, 20:30

Bonsoir , j'ai essayé avec cette methode d'insertion mais je reçois une erreur :

Code : Tout sélectionner

( ! ) Fatal error: Uncaught Error: Call to a member function execute() on boolean in C:\wamp\www\EspaceMembre\inscription.php on line 98 ( ! ) Error: Call to a member function execute() on boolean in C:\wamp\www\EspaceMembre\inscription.php on line 98
//verification Email
				$email_valide = "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,})$/i";
				
				if(preg_match($email_valide , $_POST['email']))
				{
					$valide = true;
				}
				else
				{
					$valide = false;
				}
					

					if(isset($_POST['pseudo']) && ($_POST['pass']) && ($_POST['confirm']) && ($_POST['email']) AND $valide != false)
					{
				
						$req = $bdd->prepare('INSERT INTO membres (pseudo , pass , email , date_inscription) VALUES (:pseudo , :pass , :email , CURDATE()');
			
					
					$req -> execute(array('pseudo' => $_POST['pseudo'] ,
										 'pass' => $passhash ,
										  'email' => $_POST['email']) );


						header('Location : connexion.php');
					}
					else
					{
						echo ' Pseudo ou les deux mot de passe ne sont pas identiques';
					}

ligne 98 :
 $req -> execute(array('pseudo' => $_POST['pseudo'] ,
										 'pass' => $passhash ,
										  'email' => $_POST['email']) );  

Mammouth du PHP | 2703 Messages

26 sept. 2018, 20:34

http://php.net/manual/fr/pdo.prepare.php
"Si le serveur de base de données prépare avec succès cette requête, PDO::prepare() retourne un objet PDOStatement. Si le serveur de base de données ne réussit pas à préparer la requête, PDO::prepare() retourne FALSE ou émet une exception PDOException (suivant le gestionnaire des erreurs). "
afficher l'erreur va aider à comprendre ce qui cloche dans cette requête sql.