[RESOLU] affichage d'un message d'erreur

Eléphanteau du PHP | 10 Messages

13 juil. 2014, 19:01

Bonjour,

J'aimerai afficher un message d'erreur comme le site suivant http://cpanel.hostinger.fr/auth, quand un utilisateur entre un email incorrect un message d'erreur s'affiche.. Mon code permet d'afficher l'erreur dans un nouvelle onglet.

Merci :D

Voici le code verification :

Code : Tout sélectionner

<?php session_start(); if(isset($_POST['submit'])) { $email = $_POST['email']; if($email) { // Connexion de la base de donnée try { $bdd = new PDO('mysql:host=localhost;dbname=administration','root','',array(PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION)); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } // Je vérifie l'email $req = $bdd->prepare("SELECT COUNT(*) AS membre_valide FROM profile WHERE useremail = '$email'");// Je compte le nombre d'entrée ayant pour email celui entré $req->execute(); $data = $req->fetch(); $req->closeCursor(); // Termine le traitement de la requête // Je teste la valeur de $data['membre_valide'] if($data['membre_valide'] != 0) { // Création d'un nombre aléatoire $characts = 'abcdefghijklmnopqrstuvwxyz'; $characts .= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $characts .= '1234567890'; $code_aleatoire = ''; for($i=0;$i<30;$i++) { $code_aleatoire .= substr($characts,rand()%(strlen($characts)),1); } // Modification du code de sécurité $req = $bdd->prepare("UPDATE profile SET usercode = :code_aleatoire WHERE useremail = '$email'"); $req->bindValue(':code_aleatoire', $code_aleatoire, PDO::PARAM_STR); $req->execute(); $req->closeCursor(); // Termine le traitement de la requête echo '<p>.$code_aleatoire.</p>'; echo "Un email de reinisialtion vient d'etre envoyé a votre boite email"; } else { echo 'Adresse email erronée'; } } } ?>
Code formulaire :

Code : Tout sélectionner

<!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="en" class="no-js ie6 lt8"> <![endif]--> <!--[if IE 7 ]> <html lang="en" class="no-js ie7 lt8"> <![endif]--> <!--[if IE 8 ]> <html lang="en" class="no-js ie8 lt8"> <![endif]--> <!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]--> <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" class="no-js"> <!--<![endif]--> <head> <meta charset="UTF-8" /> <!-- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> --> <title>Récupération du mot de passe</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" type="text/css" href="css/demo.css" /> <link rel="stylesheet" type="text/css" href="css/style.css" /> <link rel="stylesheet" type="text/css" href="css/animate-custom.css" /> <style> .marquee { overflow: hidden; white-space: nowrap; -webkit-animation: marquee 50s linear infinite; animation: marquee 50s linear infinite } .marquee:hover { -webkit-animation-play-state: paused; animation-play-state: paused } @-webkit-keyframes marquee { from { text-indent: 25em } to { text-indent: -105em } } </style> </head> <body> <div class="container"> <header> <h1 class="marquee">Recuperation du mot de passe</h1> </header> <section> <div id="container_demo" > <div id="wrapper"> <div id="login" class="animate form"> <form method="POST" action="verification.php"> <p> <label for="username" class="uname" data-icon="e" > Veuillez entrer votre adresse email :</label> <input id="username" name="email" required="required" type="email"/> </p> <p class="login button"> <input type="submit" value="Envoyer" name="submit"/> </p> </form> </div> </div> </div> </section> </div> </body> </html>

Mammouth du PHP | 1339 Messages

13 juil. 2014, 19:57

Le script employé par le site est celui là : http://cpanel.hostinger.fr/scripts/toastr/toastr.min.js

Et avec cette configuration là :

JS :

[javascript]//<![CDATA[
toastr.options = {
"closeButton": true,
"debug": false,
"positionClass": "toast-top-center",
"onclick": null,
"showDuration": "1000",
"hideDuration": "0",
"timeOut": "0",
"extendedTimeOut": "0",
"showEasing": "swing",
"hideEasing": "linear",
"showMethod": "fadeIn",
"hideMethod": "fadeOut"} //]]>

//<![CDATA[
toastr['error']('Email ou mot de passe non valide') //]]>[/javascript]

CSS :

http://cpanel.hostinger.fr/scripts/toas ... tr.min.css

Après à toi de trouver le script que tu trouves le plus adapté : http://jquery-plugins.net/tag/alert-box
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 10 Messages

17 juil. 2014, 03:42

Salut, problème résolu! merci.

pour les gens intéresser voila le code:

Page formulaire :

Code : Tout sélectionner

<?php session_start(); ?> <!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="en" class="no-js ie6 lt8"> <![endif]--> <!--[if IE 7 ]> <html lang="en" class="no-js ie7 lt8"> <![endif]--> <!--[if IE 8 ]> <html lang="en" class="no-js ie8 lt8"> <![endif]--> <!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]--> <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" class="no-js"> <!--<![endif]--> <head> <meta charset="UTF-8" /> <!-- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> --> <title>Espace d'authentification administrateur</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" type="text/css" href="connexion/css/demo.css" /> <link rel="stylesheet" type="text/css" href="connexion/css/style.css" /> <link rel="stylesheet" type="text/css" href="connexion/css/animate-custom.css" /> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> <style> .marquee { overflow: hidden; white-space: nowrap; -webkit-animation: marquee 50s linear infinite; animation: marquee 50s linear infinite } .marquee:hover { -webkit-animation-play-state: paused; animation-play-state: paused } @keyframes marquee { 0% { text-indent: 25em } 100% { text-indent: -105em } } @-webkit-keyframes marquee { 0% { text-indent: 25em } 100% { text-indent: -105em } } </style> <script> $(document).ready( function () { $("#connexionForm").submit( function() { // à la soumission du formulaire $.ajax({ // fonction permettant de faire de l'ajax type: "GET", // methode de transmission des données au fichier php url: "connexion/verification.php", // url du fichier php data: "username="+$("#username").val()+"&password="+$("#password").val(), // données à transmettre success: function(msg){ // si l'appel a bien fonctionné if(msg==1) // si la connexion en php a fonctionnée { window.location.assign("connexion/membre.php"); } else // si la connexion en php n'a pas fonctionnée { $("p#errorLbl").html("Ce nom d'utilisateur ou ce mot de passe est incorrect. <a href=\"recuperation/index.html\" style=\"color: #DE5711;\"></br>Vous les avez perdus ?</a>"); // on affiche un message d'erreur dans le span prévu à cet effet } } }); return false; // permet de rester sur la même page à la soumission du formulaire }); }); </script> </head> <body> <div class="container"> <header> <h1 class="marquee">Espace d'authentification administrateur</h1> </header> <section> <div id="container_demo" > <div id="wrapper"> <div id="login" class="animate form"> <form id="connexionForm" method="POST" action="#verification"> <h1>Login</h1> <p> <label for="username" class="uname" data-icon="u" > Login :</label> <input id="username" name="username" required="required" type="text"/> </p> <p> <label for="password" class="youpasswd" data-icon="p"> Mot de passe :</label> <input id="password" name="password" required="required" type="password"/> </p> <p class="login button"> <input type="submit" value="connexion" name="submit"/> </p> <p id="errorLbl" style="color: #BC0000; text-align: center"></p> <p class="change_link"> <a href="recuperation/index.html" class="to_register">Mot de passe oublié</a> </p> </form> </div> </div> </div> </section> </div> </body> </html>
Page Verification :

Code : Tout sélectionner

<?php session_start(); header("Content-Type: text/plain"); $username = (isset($_GET["username"])) ? $_GET["username"] : NULL; $password = (isset($_GET["password"])) ? $_GET["password"] : NULL; if($username && $password) { // Connexion de la base de donnée $req = $bdd->prepare("SELECT COUNT(*) AS membre_valide FROM profile WHERE userpassword = '". $password ."' AND userlogin = '". $username ."'");// Je compte le nombre d'entrée ayant pour mot de passe et login ceux rentrés $req->execute(); $data = $req->fetch(); $req->closeCursor(); if($data['membre_valide'] != 0) { echo "1"; $_SESSION['login'] = $username; } else { echo "0"; } } ?>