PHP

Erreur de syntaxe en PHP 2

Non Résolu

Bonjour, je suis les cours pas à pas pour créer son site, cependant je ne sais pas comment enregistrer ma clé dans ma base de donnée. Où se trouve-t-elle? Et comment l'enregistrer dans la BDD?


je remet ici l'extrait de l'énoncé:

"Avant d'insérer les informations pour notre nouvel utilisateur nous allons commencer par générer notre token. Pour cela nous allons utiliser la fonction random_bytes et la fonction bin2hex afin de nous donner une clé.


// bin2hex(random_bytes($length))$token = bin2hex(random_bytes(12)); // Exemples:// 39e9289a5b8328ecc4286da11076748716c41ec7fb94839a689f7dac5cdf5ba8bdc9a9acdc95b95245f80a00// On insert nos données dans la table utilisateur$DB->insert("INSERT INTO utilisateur (nom, prenom, mail, mdp, date_creation_compte, token) VALUES     (?, ?, ?, ?, ?, ?)",     array($nom, $prenom, $mail, $mdp, $date_creation_compte, $token));


N'oubliez pas d'enregistrer votre clé dans votre base de données."


//=====Ajout du message au format HTML     
$contenu = '<p>Bonjour ' . $req['nom'] . ',</p><br>
 <p>Veuillez confirmer votre compte <a href="conf.php?id=' . $req['id'] . '&token=' . $token . '">Valider</a><p>';
           
mail($mail_to, 'Confirmation de votre compte', $contenu, $header);




header('Location: index.php');
exit;


Ensuite j'ai une erreur: Parse error: syntax error, unexpected ' ' (T_STRING) in /opt/lampp/htdocs/projetweb/inscription.php on line 3 que je n'arrive pas à résoudre dans le code source "inscription.php"


Je n'ai pas mis tout le code car l'erreur s'affiche dans cette partie.

1446 vues
17 avril 2020 à 17:06 (Édité)
Cette pub permet au site de vivre ...

21 commentaires

Re:


@elodiep, le problème persiste toujours ? 🤔

@elodiep


Ok et n'oublie pas de suivre toutes les étapes !!!😀

@Nico19


D'accord je vais lire tout ça attentivement, merci pour ton aide !

Re @elodiep,


Voici les deux articles sur WAMP et XAMPP


Tu peux consulter l'article en cliquant sur ce lien

(pour le logiciel Wamp)😉


Tu peux consulter l'article en cliquant sur ce lien (pour le logiciel XAMPP)😉


PS : C'est très important de configurer ton serveur mail, sinon tu ne pourra pas envoyer de confirmation de compte😉

Par contre, j'ai lu quelques choses sur internet, apparemment pour l'envoie du mail, il faut configurer ton serveur Wamp ou XAMPP grâce au fichier "sendmail" et dans le fichier php.ini😂

@elodiep,


Je t'avoue que je n'ai jamais réussi à réaliser un système d'activation par mail d'un compte membre. C'est assez compliquer...😅

@Nico19

Le token est une clé je crois.


"Dans cette page nous allons ajouter une fonction pour générer une clé (votre token) et faire un envoi de mail contenant le lien afin de valider le compte."

Ton token te sert à quoi ? Pour les mdp ? 😀

@elodiep,


Essaye ça :


$DB->insert('Insert into user (pseudo, mail, password, idpublic) values (:pseudo, :mail,:password, :idpublic)', array('pseudo' => $Pseudo, 'mail' => $Mail, 'password' => crypt($Password, '$2a$10$1qAz2wSx3eDc4rFv5tGb5t'), 'idpublic' => $id_public));


Essaye d'adapter tes informations grâce a ce code😉

@Nico19


A ce moment là dans le code la consigne dit : N'oubliez pas d'enregistrer votre clé dans votre base de données."


Mais je ne sais pas où est-ce qu'on doit la mettre dans la base de donnée.. Je n'y connais rien à phpmyadmin


Je pense que ça doit être à cause de cela mon erreur.


$token = bin2hex(random_bytes(12)); // Exemple: 39e9289a5b8328ecc4286da11076748716c41ec7fb94839a689f7dac5cdf5ba8bdc9a9acdc95b95245f80a00

 
 
                // On insert nos données dans la table utilisateur
                $DB->insert("INSERT INTO user (nom, prenom, mail, mdp, date_creation_compte, token) 
                    VALUES 
                    (?, ?, ?, ?, ?, ?)", 
                    array($nom, $prenom, $mail, $mdp, $date_creation_compte, $token));
 

Cette pub permet au site de vivre ...
1
2
3