bonjour,
et quel est cette erreur ?
Bonjour,
Voila je rencontre un petit problème avec mon code.
J'ai bien recopier le code pour Espace membre refactoring mais je rencontre des problèmes concernant lesrequêtes préparées et les execute:
Register.php
1`<?php
2 require_once 'inc/functions.php';
3 session_start();
4 if(!empty($_POST)){
5
6 $errors = array();
7 require_once 'inc/db.php';
8
9 if(empty($_POST['username']) || !pregmatch('/^[a-zA-Z0-9]+$/', $_POST['username'])){
10 $errors['username'] = "Votre pseudo n'est pas valide (alphanumérique)";
11} else {
12 $req = $pdo->prepare('SELECT id FROM users WHERE username = ?');
13 $req->execute([$_POST['username']]);
14 $user = $req->fetch();
15 if($user){
16 $errors['username'] = 'Ce pseudo est déjà pris';
17 }
18}
19
20 if(empty($_POST['email']) || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)){
21 $errors['email'] = "Votre email n'est pas valide";
22 } else {
23 $req = $pdo->prepare('SELECT id FROM users WHERE email = ?');
24 $req->execute([$_POST['email']]);
$user = $req->fetch();``
Login.php
5 réponses
Voici:
Warning: PDOStatement::execute() expects at most 1 parameter, 6 given in C:\wamp64\www\Membres\register.php on line 40
$req->execute($_Post['Nom'],$_Post['Prenom'],$_POST['username'], $password, $_POST['email'], $token);
Call Stack
Salut,
La fonction execute ne prend qu'un seul paramètre qui est un tableau.
Voici coment tu dois utiliser ta fonction execute dans ce cas:
$req->execute(array($_Post['Nom'],$_Post['Prenom'],$_POST['username'], $password, $_POST['email'], $token ));
Tu trouveras plus d'informations à ce sujet sur [https://www.php.net/manual/fr/pdostatement.execute.php]()
Donc tu as une erreur dans ta requête associé a ce execute
Il nous faudrait cette requête.
On pourrait avoir les lignes 26 à 40 de register ?
ça a l'air bien pourtant... Si tu regardes liteblue la source générée, ça a le bon format