IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Page de connexion


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2015
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mars 2015
    Messages : 37
    Points : 51
    Points
    51
    Par défaut Page de connexion
    Bonjour ,
    j'ai un probleme avec mon code PHP pour la création d'une page de connexion je suis vraiment bloquer, j'ai tout essayer mais rien y fait.

    Message d'erreur :

    Parse error: syntax error, unexpected '$_SESSION' (T_VARIABLE) in E:\UwAmp\www\startbootstrap-bare-gh-pages\connexion.php on line 60
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    <?php
     
    session_start();
    require_once 'config/init.conf.php';
    require_once 'config/bdd.conf.php';
     
    require_once 'config/fonction.inc.php';
    require_once 'config/connexion.inc.php';
     
     /* FONCTION DE CRYPTAGE
    function cryptPassword($mdp) {
        
        $mdp_crypt =sha1($mdp);
        
        return $mdp_crypt;
    } */
     
    //$bdd="SELECT * FROM utilisateurs WHERE email= :email AND mdp = :mdp";
    //Verifie que le login et mot de passe ne sont pas vide
    if (isset($_POST) && !empty($_POST['email']) && !empty($_POST['mdp'])) {
        //Extraction des donnees du tableau
        extract($_POST);
        //Préparation de la requête
        $sql = "SELECT id FROM utilisateurs WHERE email='$email' AND mdp='$mdp'";
        //execute la requete
        $req = mysql_query($sql) or die(mysql_error());
        // Création du cookie
        // Si >0 on créer la session
        if (mysql_num_rows($req) > 0) {
            //Création d'un cookie d'une durée de 30 minutes
            $sid = md5($email . time());
            setcookie("sid", $sid, time() + 30 * 60);
            //echo $sid;
            // Initialise et creer un tableau "Auth"
            $_SESSION['Auth'] = array(
                'email' => $email,
                'mdp' => $mdp 
            );
            //Connexion ok, redirection sur la page index
            ?>
            <div class="alert alert-success" role="alert">
                <strong> Bienvenue </strong>redirection en cours ...
            </div>
            <?php
           header('refresh:2;index.php');
        }
        //print_r($_SESSION);
        //Mauvais identifiant
        else {
           ?>
            <div class="alert alert-danger" role="alert">
                <strong> Erreur </strong>Mauvais Identifiants!
            </div>
            <?php
            header('refresh:3;connexion.php');
            }
    }
    ?>
    <div class="span8">
        <form action="connexion.php" method="post" enctype="multipart/form-data" id="form_article" name="form_connexion">
            <div class="clearfix">
                <legend>Connexion Utilisateur</legend>
                <label for="titre">Adresse mail</label>
            </div>
     
            <input type="email" name="email" placeholder="Mail"/>
            <div class="clearfix">
                <label for="titre">Mot de passe </label>
                <div class="input"><input type="password" name ="mdp" placeholder="Mot de passe"> 
                </div>
            </div>
            <!-- Créer Un bouton Ajouter -->
            <input type="submit" name="connexion" value="connexion" class="btn btn-large btn-primary"> 
        </form>
    </div>
     
     
     
        <?php
        include 'include/footer.inc.php';
         include 'include/header.inc.php';
     
    ?>
    si quelqu'un aurait une solution ? merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Quelle est la ligne 60 ?

  3. #3
    Membre du Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2015
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mars 2015
    Messages : 37
    Points : 51
    Points
    51
    Par défaut
    elle commence a partir de :

    <div class="span8">

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il n'y a pas $_SESSION à ce niveau donc il y a quelque chose qui ne va pas entre le code que tu nous montres et le message d'erreur.

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Recherche les utilisations de $_SESSION dans ton code et vérifie qu'il n'y a un problème dans le code juste avant (un point-virgule manquant, une concaténation mal faite...)

    AU passage, tu as là une concentration horrible des choses à ne pas faire/utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        //Extraction des donnees du tableau
        extract($_POST);
        //Préparation de la requête
        $sql = "SELECT id FROM utilisateurs WHERE email='$email' AND mdp='$mdp'";
        //execute la requete
        $req = mysql_query($sql) or die(mysql_error());
    Utiliser extract sur $_POST, ça revient à injecter n'importe quelle donnée du formulaire dans une variable, ce qui peut écraser des variables créées avant l'appel à extract.
    Injecter des données issues du formulaire directement dans la requête, c'est une grande porte ouverte aux injections SQL. Il suffit à ton utilisateur de taper ' OR '1'='1 dans ton champ mot de passe pour que la validation soit toujours vraie.
    Ce que tu devrais avoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    //Extraction des donnees du tableau
        $email = mysql_real_escape_string($_POST['email']);
        $mdp= mysql_real_escape_string($_POST['mdp']);
        //Préparation de la requête
        $sql = "SELECT id FROM utilisateurs WHERE email='$email' AND mdp='$mdp'";
        //execute la requete
        $req = mysql_query($sql) or die(mysql_error());
    Et toujours : l'API mysql est obsolète depuis PHP 5.5 et supprimée en PHP 7. Il serait judicieux de passer à PDO (ou mysqli)

  6. #6
    Membre du Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2015
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mars 2015
    Messages : 37
    Points : 51
    Points
    51
    Par défaut
    Mon problème à été résolu , le problème venait de mon execution de ma requête update.

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Donc ce n'est pas du tout le bon code que tu nous as montré ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Page de connexion en GWT
    Par Stouille89 dans le forum GWT et Vaadin
    Réponses: 9
    Dernier message: 22/07/2009, 21h58
  2. [phpMyAdmin] Changer le titre de la page de connexion
    Par stanley dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 16/10/2007, 15h54
  3. Retour à la même page après connexion
    Par bruburque dans le forum Langage
    Réponses: 6
    Dernier message: 30/06/2007, 17h38
  4. administrateur page de connexion
    Par kitty2006 dans le forum Langage
    Réponses: 6
    Dernier message: 26/09/2006, 23h03
  5. Comment retourner à sa page apres connexion?
    Par feti2004 dans le forum Langage
    Réponses: 5
    Dernier message: 03/04/2006, 10h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo