11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Je suis face à un petit problème. J'ai une page 'test-login2.php'. Lorsque l'utilisateur clique sur le lien ci-dessous afin de se connecter à son compte, cela ouvre une popup demandant le pseudo et le mot de passe. La popup s'ouvre correctement et affiche le formulaire ci dessous.

Lien :
<a href="test-login2.php#login" style="color: white;">Ouvrir fenêtre connexion</a>


code html :

<div id="login">
  <div class="login-content">
    <div class="header">
      <h2>Login</h2>
    </div>
    <div class="copy">
<form method="post" action="test-login2.php#login_error">    
        <span for="pseudo">Votre pseudo :</span>
        <input type="pseudo" id="pseudo" name="pseudo" placeholder="Votre pseudo" required="required" /><br />
	    <div class="clear_both"></div>
        <span for="password">Mot de passe :</span>
        <input type="password" id="password" name="password" placeholder="mot de passe" required="required" /><br />
        <div class="clear_both"></div>
        <input style="margin-left: 25%; margin-top: 10px;" type="submit" name="inscription" value="Rejoindre la communauté" id="submit" />
      <a href="#">Close Link</a>      
  </div>
  </div>
  <div class="overlay"></div>
</div>


Lorsque le formulaire est soumis, le code suivant est exécuté, et au cas ou il y a des erreurs, une autre popup s'ouvre, listant les erreurs.

Mais voilà, lorsqu'il y a des erreurs, il y a bien la popup listant les erreurs qui apparait. Elle contient également le lien avec test-login2.php#login, afin de revenir sur la popup contenant le formulaire de connexion. Mais voilà, la popup ne s'ouvre pas, je me retrouve sur une page blanche. Je ne sais pas pourquoi. D'où vient l'erreur et comment y remédier ? Merci à vous

Ex en réel : https://www.webargent.fr/test-login2.php


//On vérifie si des erreurs sont survenues lors de la soumission du formulaire
	if(count($erreurs) != 0)
	{
	//Des erreurs ont été repérées, on va lister au visiteur les messages contenus dans le tableau.
	//On affiche la popup 	
	echo'<div id="login_error">
		<div class="login_error-content">
		<div class="header">
		   <h2>Erreurs de login</h2>
		</div>
		<div class="copy">';
		echo 'Des erreurs sont survenues<br />';
			foreach($erreurs as $element)
			{
    			echo $element . '<br />'; // affichera $erreurs[0], $erreurs[1] etc...
			} 
	//Pour fermer la box et revenir au formulaire de login
     	echo'<a href="test-login2.php#login">Retour</a>   
  	</div>
  	</div>
  	<div class="overlay"></div>
	</div>';
		$verif->closeCursor();
	}


Edit :

J'ai réussi en ajoutant un nouveau formulaire vers lequel je fais appel s'il y a erreur

if(isset($_POST['back']))
{
echo'<div id="login_2">
  <div class="login_2-content">
    <div class="header">
      <h2>Login</h2>
    </div>
    <div class="copy">
<form method="post" action="test-login3.php#login_error">    
        <span for="pseudo">Votre pseudo :</span>
        <input type="pseudo" id="pseudo" name="pseudo" placeholder="Votre pseudo" required="required" /><br />
	    <div class="clear_both"></div>
        <span for="password">Mot de passe :</span>
        <input type="password" id="password" name="password" placeholder="mot de passe" required="required" /><br />
        <div class="clear_both"></div>
        <input style="margin-left: 25%; margin-top: 10px;" type="submit" name="inscription" value="Connexion" id="submit" />
		</form>
      <a href="#">Close Link</a>      
  </div>
  </div>
  <div class="overlay"></div>
</div>';	
}	

Modifié par natsu84 (14 Jan 2017 - 15:46)