Problème Site web - Inscription [PHP]
Résolu
                    
        
     
             
                    Br8314
    
        
    
                    Messages postés
            
                
     
             
            47
        
            
                                    Statut
            Membre
                    
                -
                                     
chico200987 Messages postés 856 Statut Membre -
        chico200987 Messages postés 856 Statut Membre -
        Bonjour, 
Hier soir j'ai fais mon code pour la connexion des membres sur mon site web, donc sur la page d'index, là ou les gens se connecte j'ai fais un bout de php.
Je boss en local.
J'ai pas trouvé d'ou viens mon erreur :/ Le message d'erreur de mon navigateur est:
J'essayerais de me dépatouiller se soir après le boulot mais j'ai déjà passé pas mal d'heure hier sans résultats. C'est peut être tout bête ou j'ai pas fait comme il faut:
Si quelqu'un à une solution, je suis preneur.
Merci
Voici mon code en tête de ma page de connexion :
Et le formulaire de connexion :
            
            
                
            
                
    
    
    
        Hier soir j'ai fais mon code pour la connexion des membres sur mon site web, donc sur la page d'index, là ou les gens se connecte j'ai fais un bout de php.
Je boss en local.
J'ai pas trouvé d'ou viens mon erreur :/ Le message d'erreur de mon navigateur est:
Cette page Web est inaccessible. Il se peut que la page Web à l'adresse http://gar/pages/index/home.php soit temporairement inaccessible ou qu'elle ait été déplacée de façon permanente à une autre adresse Web. Erreur 101 (net::ERR_CONNECTION_RESET) : Erreur inconnue
J'essayerais de me dépatouiller se soir après le boulot mais j'ai déjà passé pas mal d'heure hier sans résultats. C'est peut être tout bête ou j'ai pas fait comme il faut:
Si quelqu'un à une solution, je suis preneur.
Merci
Voici mon code en tête de ma page de connexion :
<?php
// Redirige l'utilisateur s'il est déjà identifié
if(isset($_COOKIE["ID_UTILISATEUR"]))
{
     header("Location: home.php");
}
else
{
// Une fois le formulaire envoyé
if(isset($_POST["BT_Envoyer"]))
{
    // Connexion à la base de données
    include ('../../mySQL/connexionMySQL.php');
    // Sélection de l'utilisateur concerné
    $result = mysql_query("
        SELECT ID_Utilisateur, Nom_Utilisateur, Mot_de_Passe, Compte_Active
        FROM Comptes_Utilisateurs
        WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
    ");
    // Si une erreur survient
    if(!$result)
    {
        $message = "Une erreur est survenue lors de la tentative de connexion";
    }
    else
    {
      // Si aucun utilisateur n'a été trouvé
      if(mysql_num_rows($result) == 0)
      {
           $message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"] . " n'existe pas";
      }
      else
      {
      // Récupération des données
      $row = mysql_fetch_array($result);
      // Si le compte n'a pas été activé
      if($row["Compte_Active"] == 0)
      {
          $message = "Votre compte utilisateur n'a pas été activé";
      }
      else
      {
        // Vérification du mot de passe
        if(md5($_POST["TB_Mot_de_Passe"]) != $row["Mot_de_Passe"])
        {
             $message = "Votre mot de passe est incorrect";
        }
        else
        {
          // Définition du temps d'expiration des cookies
          $expiration = empty($_POST["CB_Connexion_Automatique"]) ? 0 : time() + 90 * 24 * 60 * 60;
          // Création des cookies
          setcookie("ID_UTILISATEUR", $row["ID_Utilisateur"], $expiration, "/");
          setcookie("NOM_UTILISATEUR", $row["Nom_Utilisateur"], $expiration, "/");
          // Fermeture de la connexion à la base de données
          mysql_close();
          // Redirection de l'utilisateur
          header("Location: home.php");
        }
      }
    }
  }
    // Fermeture de la connexion à la base de données
    mysql_close();
  }
}?>
Et le formulaire de connexion :
<form action="http://<?php echo $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post"> <ul> <li> <span class="style4" onmouseover="over('inscrip')">Déjà membre?</span></li> <li> <input rel="pseudo / email" class="" alt="pseudo" name="TB_Nom_Utilisateur" type="text" style="width:85px; vertical-align: middle; color:#999999;" value="Pseudo" onfocus="this.value=''"></li> <li> <input rel="****" class="" alt="****" name="TB_Mot_de_Passe" type="password" style="width:85px; vertical-align: middle; color:#999999;" value="****" onfocus="this.value=''"> </li> <li> <input title="Rester Connecté" class="save" type="checkbox" name="CB_Connexion_Automatique" title="Rester connecté"/> </li> <li> <input title="Connexion" class="conn" type="image" name="BT_Envoyer" value="Connection" src="/images/Icone/log-icone.png" style="vertical-align: middle;"/></li> </ul>
        A voir également:         
- Problème Site web - Inscription [PHP]
- Création site web - Guide
- Site de telechargement - Accueil - Outils
- Web office - Guide
- Site comme coco - Accueil - Réseaux sociaux
- Site x - Guide
4 réponses
                        
                    Bonjour,
Vous travaillé en local et puis vous appelez la page par "http://gar/pages/index/home.php" je pense qu'il faut utiliser http://127.0.0.1/gar/pages/index/home.php ou quelque chose de ce genre.
    
                Vous travaillé en local et puis vous appelez la page par "http://gar/pages/index/home.php" je pense qu'il faut utiliser http://127.0.0.1/gar/pages/index/home.php ou quelque chose de ce genre.
                        
                    Je ne pense pas car, j'ai testé une fois hébergé  sur mon serveur et même résultat: Phrase d'erreur :  
les cookies son pourtant acceptés. Avec firebug je peux voir qu'un coockie NOM_UTILISATEUR et ID_UTILISATEUR on été créé avec les bonnes valeurs
chemin : / <=== ca je ne sais pas ce que cela veut dire
Expire: Session
    
                Redirection de page incorrecte 
Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas. 
    *   La cause de ce problème peut être la désactivation ou le refus 
          des cookies.
les cookies son pourtant acceptés. Avec firebug je peux voir qu'un coockie NOM_UTILISATEUR et ID_UTILISATEUR on été créé avec les bonnes valeurs
chemin : / <=== ca je ne sais pas ce que cela veut dire
Expire: Session
                        
                    Salut,
Dans tous les cas y'a un problème, que tu sois en local ou pas il essaie d'acceder a "http://gar/pages/index/home.php" qui est une adresse incorrect, http://gar/ ne peut que planter si ce n'est pas une machine de ton reseau..
Essaie quelque chose comme :
    
                Dans tous les cas y'a un problème, que tu sois en local ou pas il essaie d'acceder a "http://gar/pages/index/home.php" qui est une adresse incorrect, http://gar/ ne peut que planter si ce n'est pas une machine de ton reseau..
Essaie quelque chose comme :
    header("Status: 200");
    // Note le / devant home.php pour aller a la racine
    header("Location: /home.php");
                
                
                        
                    Hey sorry j'avais pas vu le formulaire de connexion !
<form action="http://<?php echo $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
C'est la que ca ne va pas.
Essaie quelque chose comme :
Plutot !
    
                <form action="http://<?php echo $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
C'est la que ca ne va pas.
Essaie quelque chose comme :
<form action="http://<?php echo $_SERVER['HTTP_HOST'] . $_SERVER["PHP_SELF"]; ?>" method="post">
Plutot !
    Toujours pas mais par contre ce que j'ai oublié d'expliquer (tito m'y a fait penser) je me connecte à partir de la page home.php et je reviens sur la page home.php une fois connecté mais dans le menu des fonction seront visible que par les membres. Je vous envoie le lien par mp.  
ps: la page est inaccessible mais lorsque je supprime les coockie de cette page je peut y revenir... donc ca doit venir de là
    ps: la page est inaccessible mais lorsque je supprime les coockie de cette page je peut y revenir... donc ca doit venir de là
    En fait c'est complétement normal... Tu fais une boucle infinie.
Ton code home.php contient ceci :
Donc si le cookie est valide, il va sur home.php... puis hop il va revoir si le cookie est valide puisque tu viens de le rediriger sur la page.. il l'est ? Et bah on revient sur home.php.. Etc etc etc..
En fait ce bout du if ne sert pas tu devrais juste mettre :
    Ton code home.php contient ceci :
if(isset($_COOKIE["ID_UTILISATEUR"]))
{
     header("Location: home.php");
}
...
Donc si le cookie est valide, il va sur home.php... puis hop il va revoir si le cookie est valide puisque tu viens de le rediriger sur la page.. il l'est ? Et bah on revient sur home.php.. Etc etc etc..
En fait ce bout du if ne sert pas tu devrais juste mettre :
if(!isset($_COOKIE["ID_UTILISATEUR"]))
{
   // Une fois le formulaire envoyé
if(isset($_POST["BT_Envoyer"]))
{
    // Connexion à la base de données
    include ('../../mySQL/connexionMySQL.php');
    // Sélection de l'utilisateur concerné
    $result = mysql_query("
        SELECT ID_Utilisateur, Nom_Utilisateur, Mot_de_Passe, Compte_Active
        FROM Comptes_Utilisateurs
        WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
    ");
    // Si une erreur survient
    if(!$result)
    {
        $message = "Une erreur est survenue lors de la tentative de connexion";
    }
    else
    {
      // Si aucun utilisateur n'a été trouvé
      if(mysql_num_rows($result) == 0)
      {
           $message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"] . " n'existe pas";
      }
      else
      {
      // Récupération des données
      $row = mysql_fetch_array($result);
      // Si le compte n'a pas été activé
      if($row["Compte_Active"] == 0)
      {
          $message = "Votre compte utilisateur n'a pas été activé";
      }
      else
      {
        // Vérification du mot de passe
        if(md5($_POST["TB_Mot_de_Passe"]) != $row["Mot_de_Passe"])
        {
             $message = "Votre mot de passe est incorrect";
        }
        else
        {
          // Définition du temps d'expiration des cookies
          $expiration = empty($_POST["CB_Connexion_Automatique"]) ? 0 : time() + 90 * 24 * 60 * 60;
          // Création des cookies
          setcookie("ID_UTILISATEUR", $row["ID_Utilisateur"], $expiration, "/");
          setcookie("NOM_UTILISATEUR", $row["Nom_Utilisateur"], $expiration, "/");
          // Fermeture de la connexion à la base de données
          mysql_close();
          // Redirection de l'utilisateur
          header("Location: home.php");
        }
      }
    }
  }
    // Fermeture de la connexion à la base de données
    mysql_close();
  }
}
    
    En effet je n'avais pas vu ca, donc je n'ai plus cette page d'erreur, mais pour vérifier si je suis bien connecté, j'ai fais ceci: 
Si il y a le cookie id_utilisateur alors on affiche "test" sinon, on est pas connecté alors on affiche le formulaire de connexion, et... le formulaire est là même une fois connecté.
    Si il y a le cookie id_utilisateur alors on affiche "test" sinon, on est pas connecté alors on affiche le formulaire de connexion, et... le formulaire est là même une fois connecté.
<?php if(isset($_COOKIE["ID_UTILISATEUR"])) { ?>
    test
<?php } else { ?>
  <div id="h-connect">
    <?php if(isset($message)) { ?>
     <p><?php echo $message; ?></p>
    <?php }?>
    <form action="" method="post">
    <ul>
      <li> <span class="style4" onmouseover="over('inscrip')">Déjà membre?</span></li>
      <li> <input rel="pseudo / email" class="" alt="pseudo" name="TB_Nom_Utilisateur" type="text" style="width:85px; vertical-align: middle; color:#999999;" value="Pseudo" onfocus="this.value=''"></li>
      <li>
        <input rel="****" class="" alt="****" name="TB_Mot_de_Passe" type="password" style="width:85px; vertical-align: middle; color:#999999;" value="****" onfocus="this.value=''">
      </li>
      <li>
        <input title="Rester Connecté" class="save" type="checkbox" name="CB_Connexion_Automatique" title="Rester connecté"/>
      </li>
      <li> <input title="Connexion" class="conn" type="image" name="BT_Envoyer" value="Connection" src="/images/Icone/log-icone.png" style="vertical-align: middle;"/></li>
    </ul>
    <div id="inscrip"><a href="../account/accountcreate.php" class="link-inscrip">Je souhaite m'inscrire</a><img src="/images/Icone/close-small.png" style="margin-left: 6px;" onclick="out('inscrip')" alt=""></div>
    </form>
  </div>
<?php } ?>
    