J-Notify(message d'erreur)
Résolu/Fermé
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
-
13 août 2015 à 13:44
TatsuSheva Messages postés 21 Date d'inscription dimanche 9 août 2015 Statut Membre Dernière intervention 4 juillet 2016 - 14 août 2015 à 12:36
TatsuSheva Messages postés 21 Date d'inscription dimanche 9 août 2015 Statut Membre Dernière intervention 4 juillet 2016 - 14 août 2015 à 12:36
A voir également:
- J-Notify(message d'erreur)
- Erreur 0x80070643 - Guide
- Recuperer message whatsapp - Guide
- Message d'absence thunderbird - Guide
- Message non envoyé appuyez pour réessayer - Forum Mobile
- Iptv erreur de lecture - Forum TV & Vidéo
3 réponses
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
13 août 2015 à 14:38
13 août 2015 à 14:38
Bonjour,
Je pense que le mieux serait de passer par de l' AJAX pour valider ta connexion plutôt que de le faire en SUBMIT.
Cela te permettrait donc, de faire apparaitre via Javascript, le message d'erreur en cas d'erreur de connexion.
NB: Pour faire de l'ajax je t'invite à utiliser JQUERY.
Par exemple :
Maintenant la partie PHP :
NB : Je n'ai pas testé le code (je l'ai écrit à la vollée...). Il se peut donc qu'il y ait quelques erreurs.. mais ça devrait être assez facile à corriger.
En attendant ça te donne tout de même la "méthodologie" à utiliser.
Bon courage.
Je pense que le mieux serait de passer par de l' AJAX pour valider ta connexion plutôt que de le faire en SUBMIT.
Cela te permettrait donc, de faire apparaitre via Javascript, le message d'erreur en cas d'erreur de connexion.
NB: Pour faire de l'ajax je t'invite à utiliser JQUERY.
Par exemple :
<link type="text/css" href="css/jquery.jnotify.css" rel="stylesheet" media="all" /> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript" src="/lib/jquery.jnotify.js"></script> <div id="zone_afichage"> <form name="form1" method="post" action="validation.php"> <h2>Log In</h2> <input name="log" type="text" class="text-field" placeholder="Username" id="login" /> <input name="password" type="password" class="text-field" id="passwd" placeholder="Password" /> <div class="styled-select"> <select name="type" id="type"> <option>Faites votre choix</option> <option value="administrateur">administrateur</option> <option value="Etudiant">Etudiant</option> <option value="Enseignant">Enseignant</option> </select> </div> <input name="btn" type="submit" class="button" id="btn" value="Log In" /> </form> </div> <script type="text/javascript"> function connexion(){ //chemin vers ton script PHP ajax var urlAjx = "ajax_validation.php"; // récupération des infos saisies dans tes champs input : var user = $("#login").val(); var password = $("#passwd").val(); var type = $("#type").val(); // Si tous les champs sont renseignés if(typeof(type)!='undefined' && type!='' && user!='' && password!=''){ // appel via ajax de ton code d'authentification: $.ajax({ type: "POST", url:urlAjx, data: {user:user,password:password,type:type}, async: true, dataType: "json", success: function(reponse){ // ici tu traites le retour de ton code php if(reponse.error ==true){ var msg = reponse.error_message; jNotify( msg, { autoHide : true, // added in v2.0 TimeShown : 3000, HorizontalPosition : 'center', onCompleted : function(){ // added in v2.0 alert('jNofity is completed !'); } } ); // close jNotify }else{ // Si pas d'erreur.... var redirection = reponse.redirection; if(redirection !=false){ window.location = redirection; }else{ //pas de redirection.. on affiche le contenu de reponse.resultat var resultat = reponse.resultat; // par exemple dans la zone d'affichage à la place du formulaire de connexion $("#zone_afichage").html(resultat); } } }, error:function(jqXHR, textStatus){ var error = formatErrorMessage(jqXHR, textStatus); alert('error :' + error); } }); } } //Format le message d'erreur ajax : function formatErrorMessage(jqXHR, exception) { if (jqXHR.status === 0) { return ('Not connected.\nPlease verify your network connection.'); } else if (jqXHR.status == 404) { return ('The requested page not found. [404]'); } else if (jqXHR.status == 500) { return ('Internal Server Error [500].'); } else if (exception === 'parsererror') { return ('Requested JSON parse failed.'); } else if (exception === 'timeout') { return ('Time out error.'); } else if (exception === 'abort') { return ('Ajax request aborted.'); } else { return ('Uncaught Error.\n' + jqXHR.responseText); } } </script>
Maintenant la partie PHP :
<?php // variable qui sera retournée par le script : $retour = array(); //récupération des variables envoyées par le script : $login = !empty($_POST['user']) ? $_POST['user'] : NULL; $mdp = !empty($_POST['password']) ? $_POST['password'] : NULL; $type = !empty($_POST['type']) ? $_POST['type'] : NULL //Autres variables : $heure=date("H:i"); $heuredep="08:00"; $heuredest="19:00"; // Traitement : if($user && $password){ $requete="SELECT * FROM utilisateur WHERE Matricule_User='$login' AND Password_User='$mdp' AND Type_User='$type'"; $resultat=mysql_query($requete) or die("Erreur dans la requête !"); $trouver=mysql_num_rows($resultat); if($trouver>0){ $retour['redirection'] = false; $retour['error'] = false; $retour['resultat'] = ""; switch($type){ case "administrateur": $retour['redirection'] = "admin.php"; break; case "Etudiant": $retour['resultat'] = "<form id='form1' name='form1' method='post' action=''> <table width='400' border='0'> <tr><td> </td></tr><tr> <td><a href='vote.php?login=<?php echo $login; ?>' class='style1'>Vote</a><a href='result.php' class='style1'> <input name='login' type='hidden' id='login' value='<?php echo $login; ?>' /> <label></label> </a></td> </tr> <tr> <td><a href='result.php' class='style1'>Résultat </a></td></tr><tr> <td> </td></tr></table></form>"; break; case "Enseignant": // je te laisse faire les suivants... break; } }else{ $retour['error'] = true; $retour['error_msg'] = "Utilisateur inconnu ou identifiants incorects"; } }else{ $retour['error'] = true; $retour['error_msg'] = "Merci de remplir tous les champs"; } // On renvoie le resultat en format JSON echo json_encode($retour); ?>
NB : Je n'ai pas testé le code (je l'ai écrit à la vollée...). Il se peut donc qu'il y ait quelques erreurs.. mais ça devrait être assez facile à corriger.
En attendant ça te donne tout de même la "méthodologie" à utiliser.
Bon courage.
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
13 août 2015 à 15:06
13 août 2015 à 15:06
En gros voici ce que je veux afficher comme message d'erreur sur la page de connexion.
https://jsfiddle.net/g15ntemg/3/
mais comment l'integrer ? voici le probleme
https://jsfiddle.net/g15ntemg/3/
mais comment l'integrer ? voici le probleme
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
13 août 2015 à 16:09
13 août 2015 à 16:09
Ben si tu souhaites à tout pris utiliser Jnotify ... il suffit de mettre dans la variable
$retour['error_msg'] du code que je t'ai donné..... le code HTML du lien que tu viens de nous passer.....
$retour['error_msg'] du code que je t'ai donné..... le code HTML du lien que tu viens de nous passer.....
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
13 août 2015 à 16:23
13 août 2015 à 16:23
c'est possible de mettre du html dans une variable ?
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
13 août 2015 à 16:53
13 août 2015 à 16:53
oui... du html ... c'est du texte....
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
Modifié par jordane45 le 13/08/2015 à 17:32
Modifié par jordane45 le 13/08/2015 à 17:32
$retour['error_msg'] = "<div class="alert alert-error"> <a class="close" data-dismiss="alert">×</a> <strong>Username ou Password incorrect!</strong> Veuillez réessayer à nouveau </div>";
c'est correct comme ca sachant que la balise php est ouverte ?
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
.
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
>
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
13 août 2015 à 17:32
13 août 2015 à 17:32
Il faut juste que tu remplaces les DOUBLES-QUOTES qui sont DANS ta chaine par des SIMPLES QUOTES.
PS: A l'avenir.. merci d'indiquer le LANGAGE DANS les balises de code.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
.
$retour['error_msg']="<div class='alert alert-error'> <a class='close' data-dismiss='alert'>×</a> <strong>Username ou Password incorrect!</strong> Veuillez réessayer à nouveau </div>";
PS: A l'avenir.. merci d'indiquer le LANGAGE DANS les balises de code.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
.
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
13 août 2015 à 18:00
13 août 2015 à 18:00
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
13 août 2015 à 18:05
13 août 2015 à 18:05
C'est un souci d'encodage en UTF-8 sur ta page.
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
13 août 2015 à 18:16
13 août 2015 à 18:16
oui il est en UTF-8
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
13 août 2015 à 18:47
13 août 2015 à 18:47
Tu peux nous montrer l'intégralité du code de ta page HTML ?
De plus... les fichiers ... sont ils bien encodés en UTF-8 (sans BOM) ? (tu peux le voir en utilisant un éditeur comme Notepad++ par exemple).
De plus... les fichiers ... sont ils bien encodés en UTF-8 (sans BOM) ? (tu peux le voir en utilisant un éditeur comme Notepad++ par exemple).
TatsuSheva
Messages postés
21
Date d'inscription
dimanche 9 août 2015
Statut
Membre
Dernière intervention
4 juillet 2016
13 août 2015 à 19:03
13 août 2015 à 19:03
<?php
session_start();
include ('election.php');?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Log In</title>
<link rel="stylesheet" href="style.css" />
<link rel="stylesheet" href="style2.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="/lib/jquery.jnotify.js"></script>
</head>
<body>
<?php if(isset($_SESSION['errors'])): ?>
<?=implode($_SESSION['errors']); ?>
<?php endif; ?>
<nav><a href="#" class="focus">Log In</a> | <a href="register.html">Register</a></nav>
<form name="form1" method="post" action="validation.php">
<h2>Log In</h2>
<input name="log" type="text" class="text-field" placeholder="Username" id="login" />
<input name="password" type="password" class="text-field" id="passwd" placeholder="Password" />
<div class="styled-select">
<select name="type" id="type">
<option>Faites votre choix</option>
<option value="administrateur">administrateur</option>
<option value="Etudiant">Etudiant</option>
<option value="Enseignant">Enseignant</option>
</select>
</div>
<input name="btn" type="submit" class="button" id="btn" value="Log In" />
</form>
<?php unset($_SESSION['errors']); ?>
</body>
</html>
jordane45
Messages postés
38108
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mars 2024
4 633
13 août 2015 à 19:31
13 août 2015 à 19:31
oK
Et pour ce qui est de l'encodage des fichiers ?
Et pour ce qui est de l'encodage des fichiers ?