Afficher un message d'erreur dans un popup

Signaler
Messages postés
4
Date d'inscription
lundi 22 juin 2020
Statut
Membre
Dernière intervention
25 juin 2020
-
Messages postés
4
Date d'inscription
lundi 22 juin 2020
Statut
Membre
Dernière intervention
25 juin 2020
-
Bonjour, Je travaille sur un projet dont le code est en langage PHP et il est organisé par MVC et je sais
pas comment afficher l'erreur "invalide login ou mot de passe" dans un popup en utilisant ajax et javascript

"vformLogin.php"
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
 
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <link rel="stylesheet" href="public/css/bootstrap.min.css">
 
 <style type="text/css">

body{
  background: #b2a6bf;
}
  .container{
 position:absolute;
 top:18%;
  left:32%; 
   
    tranform:translate(-50%,-50%);   
     width:400px; 
  height: 360px; 
   border-radius: 25px;
   box-sizing: border-box;   
  background: #ebe6e6; 
   padding:40px;
   
}
#navtxt{ color: white;} 
.Err{
color:red;}

 </style>
</head>
<body>
<nav class="navbar navbar-light" style="background-color: #302A56;">  
 
  <!-- Navbar content -->
<span class="navbar-text" id="navtxt">
      Espace Coordonnateur
    </span>
 
</nav>
<div class="container">

 <span class="Err"><?= isset($erreur["User"])? $erreur["User"]:"" ?> </span>
<form    method="post"  action="" id="form" > 

  
  <h2>Se connecter</h2>
   
    <div class="form-group">
      <label for="">Nom utilisateur:</label>
      <input type="text" class="form-control" name="login" id="Login" placeholder="Entrer votre nom utilisateur" required name="login">
   
    </div>
    <div class="form-group">
      <label for="">Mot de passe:</label>
      <input type="password" class="form-control" id="Password" name="password" placeholder="Entrer votre mot de passe" required name="password">
   
   </div>
   <div class="form-group">
 <button type="submit" class="btn btn-primary"  id="formsubmitbutton" value="Connexion"   name="Connexion">Connexion</button>
 </div>
   </form>
</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="public/jquery/jquery-3.5.0.js" > </script>
<script type="text/javascript" src="public/js/bootstrap.min.js"></script>


</body>
</html>
   



"UserController.php"
<?php 
require_once ("Models/UserManager.php");
require_once ("Views/Response.php");

function User_connexionAction(array $t= NULL){
 if ($_SERVER["REQUEST_METHOD"]=="POST") { 
    
  if(empty($_POST["login"]))  $erreur["Login"] ="Le login est vide !..."   ;
  if(empty($_POST["password"]))  $erreur["PW"] ="Le mot de passe est vide !..."   ;
  
  if (!isset($erreur)) {
   $t=[$_POST["login"],md5($_POST["password"])];
   if(user_exists($t)){
    $_SESSION["password"]=$_POST["password"];
    $_SESSION["login"]= $_POST["login"];
    header ("location: index.php?module=Coordonnateur&action=espace");
    
   }
   else{$erreur["User"]= "Login ou mot de passe incorrect!...";}
  }
 }
 
 require("./Views/User/vformLogin.php");

}



"UserManager.php"
<?php
require_once("cn.php");
function user_exists(array $t){
 $rq= "SELECT  count(*) FROM professeur p,filiere f where f.code_coordonnateur=p.codeP  AND p.Login='".$_POST["login"]."' AND p.Password='".$_POST["password"]."' ";
return getCn()->query($rq)->fetchColumn();
}


EDIT : Ajout des balises de code

1 réponse

Messages postés
28861
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2020
2 590
Bonjour


je sais
pas comment afficher l'erreur "invalide login ou mot de passe" dans un popup en utilisant ajax et javascript

En même temps, il n'y a pas de javascript (ni d'ajax) dans le code que tu nous montres...


Voici des exemples de code ajax
http://codes-sources.commentcamarche.net/source/102253-exemple-ajax-en-jquery


PS: A l'avenir, merci d'utiliser les balises de code pour poster du code sur le forum;
Explications ( à lire entièrement ! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Messages postés
4
Date d'inscription
lundi 22 juin 2020
Statut
Membre
Dernière intervention
25 juin 2020

j'ai essayé plusieurs solutions mais çà ne marchait pas et puisque je voulais voir des solutions qui seront adaptées au modèle MVC j'ai supprimé la fonction javascript que j'avais utilisé .
Messages postés
28861
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2020
2 590 >
Messages postés
4
Date d'inscription
lundi 22 juin 2020
Statut
Membre
Dernière intervention
25 juin 2020

Le plus simple, c'est de créer un controller propre aux appels ajax...
Dans ta vue... tu places le code JS qui contiendra ton appel ajax vers ce controller
Dans le modèle, tu place le code qui devra aller chercher les données en BDD

Que ce soit sous le modèle MVC ou non.. le principe de l'ajax reste le même..
Un code JS qui fait appel à un code php ...
Messages postés
4
Date d'inscription
lundi 22 juin 2020
Statut
Membre
Dernière intervention
25 juin 2020
>
Messages postés
28861
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2020

ok merci beaucoup