Php/Mysql problème d'envoi de formulaire vers la base de données
Résolu/Fermé
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
-
30 oct. 2017 à 18:15
Wollfie Messages postés 16 Date d'inscription lundi 30 octobre 2017 Statut Membre Dernière intervention 29 janvier 2018 - 30 oct. 2017 à 22:41
Wollfie Messages postés 16 Date d'inscription lundi 30 octobre 2017 Statut Membre Dernière intervention 29 janvier 2018 - 30 oct. 2017 à 22:41
A voir également:
- Formulaire insertion données mysql php pdo
- Insertion liste déroulante excel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Mysql download - Télécharger - Bases de données
- Insertion sommaire word - Guide
- Touche insertion clavier - Guide
5 réponses
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
4 624
30 oct. 2017 à 20:07
30 oct. 2017 à 20:07
Bonjour
Pour commencer : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Puis ça :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Cordialement,
Jordane
Pour commencer : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Puis ça :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Cordialement,
Jordane
yg_be
Messages postés
22575
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 mars 2024
1 458
30 oct. 2017 à 20:08
30 oct. 2017 à 20:08
bonsoir, peux-tu partager le texte de ton code PHP, et pas l'image?
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
Modifié le 30 oct. 2017 à 21:41
Modifié le 30 oct. 2017 à 21:41
<?php error_reporting(E_ALL); $bdd= new PDO('mysql:host=localhost;dbname=visiteurs;charset=utf8','root','') $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } ?>
J'ai mis ça, et ma page refuse de se charger et le message "Parse error: syntax error, unexpected '$bdd' (T_VARIABLE) in C:\wampserv64\www\Site\Signin.php on line 4" apparaît, la ligne 4 dans mon fichier étant le premier "set attribute"
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
30 oct. 2017 à 21:31
30 oct. 2017 à 21:31
Sachant que je n'ai pas encore mis la partie détection d'erreurs de requête dans mon code...
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
4 624
Modifié le 30 oct. 2017 à 21:42
Modifié le 30 oct. 2017 à 21:42
Il manque un point-virgule à la ligne 3
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
>
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
30 oct. 2017 à 21:46
30 oct. 2017 à 21:46
Merci beaucoup ! Après une autre petite correction (nom de variable : pass_hache et pas passe_hache) ça fonctionne bien !
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
30 oct. 2017 à 21:55
30 oct. 2017 à 21:55
J'en profite pendant que vous êtes là, dans le login cette fois, j'ai mis dans le code l'affichage des erreurs, aucune erreur n'est affichée :
$pseudo = ($_POST['pseudologin']); //hachage du mdp $pass_harche = sha1($_POST['mdplogin']); //verification des id $req = $bdd->prepare('SELECT id FROM visiteurs WHERE pseudo = :pseudo AND mdp = :mdp'); $req->execute(array( 'pseudo' => $pseudo, 'mdp' => $pass_hache)); $resultat = $req->fetch(); if(!$resultat) { ?> <script> alert('Mauvais mot de passe ou identifiant!'); </script> <?php } else { session_start(); $_SESSION['id'] = $resultat['id']; $_SESSION['pseudo'] = $pseudo; header('location: membres.php'); }
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
30 oct. 2017 à 22:11
30 oct. 2017 à 22:11
Même en ayant corrigé le fait que je ne sache pas écrire hache à la ligne 3, le problème reste existant...
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
4 624
>
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
30 oct. 2017 à 22:17
30 oct. 2017 à 22:17
Comme expliqué dans le lien que je t'ai donné.... Place tes requêtes dans des blocs try catch...
Et puis... Sans voir l'intégralité de ton code... Difficile de te répondre
Et puis... Sans voir l'intégralité de ton code... Difficile de te répondre
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
>
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
30 oct. 2017 à 22:19
30 oct. 2017 à 22:19
Je l'ai fait de mon côté mais ça n'a rien donné...
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
>
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
30 oct. 2017 à 22:19
30 oct. 2017 à 22:19
Je peux t'envoyer des messages privés avec tout mon code ?
jordane45
Messages postés
38079
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2024
4 624
>
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
30 oct. 2017 à 22:22
30 oct. 2017 à 22:22
Non.
Tu postes sur le forum
Tu postes sur le forum
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
30 oct. 2017 à 22:24
30 oct. 2017 à 22:24
Mon code entier : Bonne chance !
<?php try{ error_reporting(E_ALL); $bdd = new PDO('mysql:host=localhost;dbname=visiteurs;charset=utf8','root',''); $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); }catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } ?> <form method="post" action=""> <fieldset id="formulairelogin"> <label for="pseudo">Entrez votre Pseudonyme:</label> <input type="text" id="pseudo" name="pseudologin" autocomplete="on"><br> <label for="mdp">Entrez votre Mot de passe:</label> <input type="password" id="mdp" name="mdplogin"><br> <input type="submit" value="Envoyer"> </fieldset> </form> <p><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></p> <div id="bas"><p><br></p></div> <?php if(isset($_POST['Envoyer'])){ //test de l'envoi du formulaire $pseudo = ($_POST['pseudologin']); //hachage du mdp $pass_hache = sha1($_POST['mdplogin']); //verification des id try{$req = $bdd->prepare('SELECT id FROM visiteurs WHERE pseudo = :pseudo AND mdp = :mdp'); $req->execute(array( 'pseudo' => $pseudo, 'mdp' => $pass_hache)); $resultat = $req->fetch(); //verification du mot de passe if(!$resultat) { ?> <script> alert('Mauvais mot de passe ou identifiant!'); </script> <?php } else { //si bon, ouverture de la session session_start(); $_SESSION['id'] = $resultat['id']; $_SESSION['pseudo'] = $pseudo; header('location:membres.php'); }}catch(Exception $e){ // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); echo " Les datas : " ; print_r($datas); }} ?>
Wollfie
Messages postés
16
Date d'inscription
lundi 30 octobre 2017
Statut
Membre
Dernière intervention
29 janvier 2018
2
30 oct. 2017 à 22:41
30 oct. 2017 à 22:41
Désolé du dérangement, j'ai oublié le name= dans la partie submit du formulaire, tout fonctionne correctement,
merci de votre aide précieuse,
Cordialement,
Léo.
merci de votre aide précieuse,
Cordialement,
Léo.