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

PHP & Base de données Discussion :

Maintien de l'authentification [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2017
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2017
    Messages : 44
    Points : 34
    Points
    34
    Par défaut Maintien de l'authentification
    Bonjour, j'ai un problème avec mon site que je suis en train de créer, je pense que le problème vient du fichier 'auth.php' car lorsqu'un utilisateur est sensé se connecter sur la page d'accueil, il doit être redirigé sur v_liste.php, jusque là l'authentification fonctionne, mais lorsque je passe de la page v_liste.php à v_contratMaintenance, l'authentification ne fonctionne plus depuis que j'ai rajouté l'include 'auth.php'.
    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
    <meta charset="utf-8" >
    <meta name="viewport" content="width=width, initial-scale=1.0">
    <?php
     
    $dbh = new PDO('mysql:host=localhost;dbname=fichesclients','root','');
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
     
    $login = $_REQUEST['login'];
    $mdp = $_REQUEST['mdp'];
     
    //requête SQL qui permet de selectionner les utilisateurs qui peuvent se connecter au site.
    $sth = $dbh->prepare("SELECT login, mdp FROM infoconnexion WHERE login ='$login' and mdp ='$mdp'");
     
    $sth->execute(array());
    $res = $sth->fetchAll();
     
    //authentification de l'utilisateur, ( se connecte pas si les données login/mdp ne correspondent pas à la BDD).
     
    if(is_array($ligne)){
        $_SESSION['login'] = $sth[0];
        $_SESSION['mdp'] = $sth[1];
    }
    else {
    header('Location:accueil.php');
    }
    ?>
    puis mon fichier v_contratMaintenance :
    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
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    <?php
    session_start();
    include('auth.php');
    ?>
    <html>
    <head>
     
    <meta charset="utf-8"/ >
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel ="stylesheet" href = "main.css" type = "text/css">
    <link rel="stylesheet" media="screen and (min-device-width:768px) and (max-device-width:1023px)" href="mainMin768.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1024px) and (max-device-width:1300px)" href="mainMin1024.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1301px) and (max-device-width:1400px)" href="mainMin1301.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1401px)" href="mainMin1401.css" type="text/css" />
     
        <title>InfobisPro</title>
     
          </head>
     
    <body style="background-color: black; color:white;">
    <script type="text/javascript"> 
    function ConfirmMessage() {
        if (confirm("Voulez-vous modifier ce client ?")){
            alert("Le client a bien été modifié !");
            window.location.assign('v_liste.php');
        }
    }
    </script>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <div id = "bienvenueMaintenance">
        <h1>Bienvenue sur la page de gestion des contrats de maintenance !</h1><br>
    </div>
    <?php 
        if(isset($_POST['liste1']))
        { 
    //si la liste a été "postée" c'est à dire choix fait 
        $liste1=$_POST['liste1']; 
            }else{ 
                $liste1=-1; 
        } 
     
    ?>
     <form method="post" action="v_liste.php">
              <INPUT TYPE="submit" value="OK">
     
    </form>   
     
    <h2 style ="color:white; text-align:center; ">Selectionnez le nom du client dans la liste ci-dessous :</h2><br>
    <form id="selectionNomMaintenance" name ="selectionNomMaintenance" method= "POST" action="v_contratMaintenance.php">
    <select name = "liste1" class="liste1" onchange="selectionNomMaintenance.submit();">
        <option value =-1> -- Choisissez -- </option>
    <?php
     
    $base = mysql_connect('localhost','root','');
    mysql_select_db('fichesclients', $base);
    $requete = 'SELECT societeClient FROM infoclient WHERE typeContrat="Maintenance"';
    $exec_req = mysql_query($requete);
    while ($data = mysql_fetch_array($exec_req))
        {
            echo "<option value=\"".$data["societeClient"]."\"";
            if($liste1==$data['societeClient']){ echo "selected";}//pour garder la selection lors du réaffichage
                echo ">".$data['societeClient']."</option>\n";
        }
     
    ?>
        </select></form>
     
    <?php
     
    if($liste1 != -1){
        $requete = "SELECT idClient, societeClient, nomClient, prenomClient, telephoneMobileClient, telephoneFixeClient, adresseClient, emailClient, dateContratClient, typeContrat, notesClient FROM infoclient WHERE societeClient ='".$liste1."'";
        $exec_req =mysql_query($requete);
        $data = mysql_fetch_array($exec_req);
     
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" >    
    <form action ="v_contratMaintenance.php" class="input-group2" method ="POST">
    <input name="idClient" type ="hidden" value="<?php echo $data['idClient'];?>"><br>
     
        <br><input style ="text-align:center;" type="text" name="societeClient" value="<?php echo $data['societeClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="text" name="nomClient" value="<?php echo $data['nomClient']; ?>" /><br><br>
        <input style ="text-align:center;" type="text" name="prenomClient" value="<?php echo $data['prenomClient']; ?>" /><br><br>
        <input style ="text-align:center;" type="tel" name="telephoneMobileClient" maxlength="10" value="<?php echo $data['telephoneMobileClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="tel" name="telephoneFixeClient" maxlength="10" value="<?php echo $data['telephoneFixeClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="text" name="adresseClient" value="<?php echo $data['adresseClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="email" name="emailClient" value="<?php echo $data['emailClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="date" name="dateContratClient" value="<?php echo $data['dateContratClient']; ?>"/><br><br>
        <input style ="text-align:center;" disabled="disabled" type="text" name="typeContrat" value ="<?php echo $data['typeContrat']; ?>"> <br><br>
        <center><textarea name="notesClient" resize="none" rows="8" cols="30" value="<?php echo $data['notesClient']; ?>" placeholder="<?php echo $data['notesClient']; ?>"></textarea></center><br>
        <input type="reset" value="Reset"/>
        <input type="submit" name="modifierClient" value="Modifier" onClick="ConfirmMessage()"/>
     
     
    </form>
     
    <?php
     
     }    
    if (isset($_POST['modifierClient']))
    {
        $cnx = mysql_connect("localhost", "root", "");
        $db = mysql_select_db("fichesclients");
        print_r($_SESSION);
        $idClient = $_POST["idClient"];
        $societeClient = $_POST['societeClient'];
        $nomClient = $_POST['nomClient'];
        $prenomClient = $_POST['prenomClient'];
        $telephoneMobileClient = $_POST['telephoneMobileClient'];
        $telephoneFixeClient = $_POST['telephoneFixeClient'];
        $adresseClient = $_POST['adresseClient'];
        $emailClient = $_POST['emailClient'];
        $dateContratClient = $_POST['dateContratClient'];
        $typeContrat = $_POST['typeContrat'];
        $notesClient = $_POST['notesClient'];
     
        $sql = "UPDATE infoclient SET societeClient = '$societeClient', nomClient = '$nomClient', prenomClient = '$prenomClient', telephoneMobileClient = '$telephoneMobileClient', telephoneFixeClient = '$telephoneFixeClient', adresseClient ='$adresseClient', emailClient = '$emailClient', dateContratClient = '$dateContratClient', typeContrat ='$typeContrat', notesClient = '$notesClient' WHERE idClient = '$idClient'";
     
    $requete = mysql_query($sql, $cnx) or die (mysql_error());
     
    }
     
    ?>
     
    </body>
    </html>

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2017
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2017
    Messages : 44
    Points : 34
    Points
    34
    Par défaut
    J'ajoute qu'on m'a dit qu'il ne fallait pas concaténer d'une façon brute pour la connexion à la BDD mais après que j'ai utilisé le prepare() la connexion à la BDD ne se fait plus et je n'arrive plus a me logger à mon site.
    Mon fichier auth.php était ça avant que je modifie rapidement :
    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
    <meta charset="utf-8" >
    <meta name="viewport" content="width=width, initial-scale=1.0">
    <?php
     
    $pdo = new PDO('mysql:host=localhost;dbname=fichesclients','root','');
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
     
    $login = $_REQUEST['login'];
    $mdp = $_REQUEST['mdp'];
     
    //requête SQL qui permet de selectionner les utilisateurs qui peuvent se connecter au site.
     
    $req = "SELECT login, mdp FROM infoconnexion WHERE login ='$login' and mdp ='$mdp'";
    $rs = $pdo->query($req);
    $ligne =$rs->fetch();
     
    //authentification de l'utilisateur, ( se connecte pas si les données login/mdp ne correspondent pas à la BDD).
     
    if(is_array($ligne)){
        $_SESSION['login'] = $ligne[0];
        $_SESSION['mdp'] = $ligne[1];
    }
    else {
    header('Location:accueil.php');
    }
    ?>

  3. #3
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut.

    Pour ma part ce qui m'étonne un peu dans ton code, c'est l'utilisation d'un "echo meta" tout au début de ta page et ensuite l'utilisation d'un header...

    A lire : http://php.net/manual/fr/function.header.php

    De la même manière, on utilise les sessions au tout début de la page sinon ça marche pas il me semble...

    Bon courage.
    De retour parmis vous après 10 ans!!

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2017
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2017
    Messages : 44
    Points : 34
    Points
    34
    Par défaut
    Salut. C'était mon ancien fichier auth.php, je l'ai corrigé maintenant concernant les balises html meta ! Le réel problème c'est que la connexion à la BDD marche très bien pour se logger et le système accède bien au fichier v_liste.php suite à la connexion d'un utilisateur, mais lorsque je viens cliquer sur le choix "contrat maintenance" qui correspond à la page v_contratMaintenance.php, et bien l'authentification ne se fait pas et il y a redirection sur "accueil.php", sans l'include 'auth.php' ça marche bien étant donné qu'il y a pas la notion de connexion d'utilisateur.
    Ci - joint le code v_liste.php qui permettrait de m'aider un peu mieux peut être
    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
    <?php
    session_start();
    include('auth.php');
    print_r($_SESSION);
     
    ?>
    <html>
          <head>
    <meta charset="utf-8" >
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" media="screen and (min-device-width:768px) and (max-device-width:1023px)" href="mainMin768.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1024px) and (max-device-width:1300px)" href="mainMin1024.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1301px) and (max-device-width:1400px)" href="mainMin1301.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1401px)" href="mainMin1401.css" type="text/css" />
     
     
        <title>InfobisPro</title>
     
          </head>
    </html>
     
    <body bgcolor = "black" >
        <div id = "menu" >
      <ul id = "onglets">
        <li><a href = "accueil.php?uc=deconnexion" style ="font-family:Helvetica;"> Log out </a></li>
      </ul>
        </div>
       <img src = "logo5.png"/><b>
           <div id = "Bienvenue"><br><br><h1><font color="white"><b>Bienvenue sur la gestion des fiches des clients, <?php echo $_SESSION['login']; ?> !</b>
           </div>
     
    <div id = "bloc">
        <div id="bloc1" onmouseover="this.style.background='red';" onmouseout="this.style.background='black'";>
            <a href=v_contratMaintenance.php><h1>Contrat de Maintenance</h1>
        </div> 
     
        <div id="bloc2" onmouseover="this.style.background='red';" onmouseout="this.style.background='black';">
            <a href=v_contratCALP.php><h1>Contrat CALP</h1>
        </div>
     
        <div id="bloc3" onmouseover="this.style.background='red';" onmouseout="this.style.background='black';">
            <a href=v_ajoutClient.php><h1>Ajouter un nouveau client</h1>
        </div>
     
    </div>
    </body>
    </html>

  5. #5
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    ok. Peux-tu montrer un peu le code de cette page "v_contratMaintenance.php" ?

    PS : Je chipote un peu mais je te conseille de faire attention à la qualité de ton code HTML, ça peut être une source d'erreur...
    Une balise de lien est toujours encadrée par des guillemets et doit avoir une balise de fermeture :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="v_contratCALP.php"><h1>Contrat CALP</h1></a>
    De retour parmis vous après 10 ans!!

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2017
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2017
    Messages : 44
    Points : 34
    Points
    34
    Par défaut
    Voici le code v_contratMaintenance.php :
    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
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    <?php
    session_start();
    include('auth.php');
    echo '$login';
    echo 'login';
    echo $ligne[0];
    echo $ligne[1];
    echo 'login';
    print_r($_SESSION);
    var_dump('$login');
    ?>
    <html>
    <head>
     
    <meta charset="utf-8"/ >
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel ="stylesheet" href = "main.css" type = "text/css">
    <link rel="stylesheet" media="screen and (min-device-width:768px) and (max-device-width:1023px)" href="mainMin768.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1024px) and (max-device-width:1300px)" href="mainMin1024.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1301px) and (max-device-width:1400px)" href="mainMin1301.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1401px)" href="mainMin1401.css" type="text/css" />
     
        <title>InfobisPro</title>
     
          </head>
     
    <body style="background-color: black; color:white;">
    <script type="text/javascript"> 
    function ConfirmMessage() {
        if (confirm("Voulez-vous modifier ce client ?")){
            alert("Le client a bien été modifié !");
            window.location.assign('v_liste.php');
        }
    }
    </script>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <div id = "bienvenueMaintenance">
        <h1>Bienvenue sur la page de gestion des contrats de maintenance !</h1><br>
    </div>
    <?php 
        if(isset($_POST['liste1']))
        { 
    //si la liste a été "postée" c'est à dire choix fait 
        $liste1=$_POST['liste1']; 
            }else{ 
                $liste1=-1; 
        } 
     
    ?>
     <form method="post" action="v_liste.php">
              <INPUT TYPE="submit" value="OK">
     
    </form>   
     
    <h2 style ="color:white; text-align:center; ">Selectionnez le nom du client dans la liste ci-dessous :</h2><br>
    <form id="selectionNomMaintenance" name ="selectionNomMaintenance" method= "POST" action="v_contratMaintenance.php">
    <select name = "liste1" class="liste1" onchange="selectionNomMaintenance.submit();">
        <option value =-1> -- Choisissez -- </option>
    <?php
     
    $base = mysql_connect('localhost','root','');
    mysql_select_db('fichesclients', $base);
    $requete = 'SELECT societeClient FROM infoclient WHERE typeContrat="Maintenance"';
    $exec_req = mysql_query($requete);
    while ($data = mysql_fetch_array($exec_req))
        {
            echo "<option value=\"".$data["societeClient"]."\"";
            if($liste1==$data['societeClient']){ echo "selected";}//pour garder la selection lors du réaffichage
                echo ">".$data['societeClient']."</option>\n";
        }
     
    ?>
        </select></form>
     
    <?php
     
    if($liste1 != -1){
        $requete = "SELECT idClient, societeClient, nomClient, prenomClient, telephoneMobileClient, telephoneFixeClient, adresseClient, emailClient, dateContratClient, typeContrat, notesClient FROM infoclient WHERE societeClient ='".$liste1."'";
        $exec_req =mysql_query($requete);
        $data = mysql_fetch_array($exec_req);
     
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" >    
    <form action ="v_contratMaintenance.php" class="input-group2" method ="POST">
    <input name="idClient" type ="hidden" value="<?php echo $data['idClient'];?>"><br>
     
        <br><input style ="text-align:center;" type="text" name="societeClient" value="<?php echo $data['societeClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="text" name="nomClient" value="<?php echo $data['nomClient']; ?>" /><br><br>
        <input style ="text-align:center;" type="text" name="prenomClient" value="<?php echo $data['prenomClient']; ?>" /><br><br>
        <input style ="text-align:center;" type="tel" name="telephoneMobileClient" maxlength="10" value="<?php echo $data['telephoneMobileClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="tel" name="telephoneFixeClient" maxlength="10" value="<?php echo $data['telephoneFixeClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="text" name="adresseClient" value="<?php echo $data['adresseClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="email" name="emailClient" value="<?php echo $data['emailClient']; ?>"/><br><br>
        <input style ="text-align:center;" type="date" name="dateContratClient" value="<?php echo $data['dateContratClient']; ?>"/><br><br>
        <input style ="text-align:center;" disabled="disabled" type="text" name="typeContrat" value ="<?php echo $data['typeContrat']; ?>"> <br><br>
        <center><textarea name="notesClient" resize="none" rows="8" cols="30" value="<?php echo $data['notesClient']; ?>" placeholder="<?php echo $data['notesClient']; ?>"></textarea></center><br>
        <input type="reset" value="Reset"/>
        <input type="submit" name="modifierClient" value="Modifier" onClick="ConfirmMessage()"/>
     
     
    </form>
     
    <?php
     
     }    
    if (isset($_POST['modifierClient']))
    {
        $cnx = mysql_connect("localhost", "root", "");
        $db = mysql_select_db("fichesclients");
        print_r($_SESSION);
        $idClient = $_POST["idClient"];
        $societeClient = $_POST['societeClient'];
        $nomClient = $_POST['nomClient'];
        $prenomClient = $_POST['prenomClient'];
        $telephoneMobileClient = $_POST['telephoneMobileClient'];
        $telephoneFixeClient = $_POST['telephoneFixeClient'];
        $adresseClient = $_POST['adresseClient'];
        $emailClient = $_POST['emailClient'];
        $dateContratClient = $_POST['dateContratClient'];
        $typeContrat = $_POST['typeContrat'];
        $notesClient = $_POST['notesClient'];
     
        $sql = "UPDATE infoclient SET societeClient = '$societeClient', nomClient = '$nomClient', prenomClient = '$prenomClient', telephoneMobileClient = '$telephoneMobileClient', telephoneFixeClient = '$telephoneFixeClient', adresseClient ='$adresseClient', emailClient = '$emailClient', dateContratClient = '$dateContratClient', typeContrat ='$typeContrat', notesClient = '$notesClient' WHERE idClient = '$idClient'";
     
    $requete = mysql_query($sql, $cnx) or die (mysql_error());
     
    }
     
    ?>
     
    </body>
    </html>

  7. #7
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Éventuellement, je vois une possible erreur lorsque dans ton fichier auth.php, tu utilises systématiquement une requête dans la bdd avec les identifiants qui se trouvent dans la variable $_REQUEST... Si tu ne repostes pas de formulaire (et c'est le cas puisque tu utilises un lien), tu perds donc ces informations... La solution est de vérifier si la session est valide et de ne pas refaire cette requête dans ce cas.
    Si tu as compri mon explication, essaye un code du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    session_start();
    if (!isset($_SESSION['login'])) include('auth.php');
    ...
    De retour parmis vous après 10 ans!!

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2017
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2017
    Messages : 44
    Points : 34
    Points
    34
    Par défaut
    Chapeau l'ami ! C'était exactement ça l'erreur... la redirection suite à la connexion d'un utilisateur de v_liste.php vers v_contratMaintenance.php ( et inversement ) se fait désormais très bien, merci de m'avoir fait gagné du temps, ( après deux jours de modifications intempestives et d'incompréhensions..) un grand respect à toi !

  9. #9
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    C'est avec plaisir!
    Si j'ai encore un conseil d'ancien à te donner : Essaye d'être autant que possible rigoureux car la rigueur est la principale qualité d'un bon développeur
    Bon courage pour la suite.

    ps : Marque le post [RESOLU]
    De retour parmis vous après 10 ans!!

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2017
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2017
    Messages : 44
    Points : 34
    Points
    34
    Par défaut
    Merci du conseil ! Avant de marquer le post [RESOLU], j'aimerais solliciter votre aide pour une autre question légèrement différente, c'est par rapport au design cette fois-ci :
    J'aimerais qu'à la page d'accueil, Nom : connexion.png
Affichages : 82
Taille : 3,5 Ko, la connexion ne se présente pas directement comme deux div, j'aimerais qu'à la place il y est juste le bouton connexion par exemple, et lors du clic sur le bouton, une fenêtre ou un affichage différent apparaît, où l'on puisse écrire son login/mdp (juste histoire d'améliorer le design car on m'a rapporté que c'était très moche et plutôt obsolète comme méthode visuelle de connexion). Si vous êtes impuissant concernant mon idée d'amélioration ce n'est pas grave, je marquerai ce post [RESOLU] et j'irais écrire un nouveau post concernant le design ! Merci d'avance

    Voici le code de ma page accueil.php
    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
    <?php
    session_start();
    ?>
    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
          <head>
    <meta charset="utf-8" >
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" media="screen and (min-device-width:768px) and (max-device-width:1023px)" href="mainMin768.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1024px) and (max-device-width:1300px)" href="mainMin1024.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1301px) and (max-device-width:1400px)" href="mainMin1301.css" type="text/css" />
    <link rel="stylesheet" media="screen and (min-device-width:1401px)" href="mainMin1401.css" type="text/css" />
     
     
        <title>InfobisPro</title>
     
          </head>
     
      <body style="background-color: black;">
     
    <div class="conteneurAccueil">
        <div class="baliseConteneurAccueil">
     
                <form action="v_liste.php" method="POST">
     
     
                    <div style="color: white; position:absolute; top:-1%; left:3%;"><h4>Entrez votre identifiant pour vous connecter</h4></div>
                                      <img src="logo3.png"/>
                                      <img src="logo4.png"/>
                    <span class="input-group-addon"><i class="fa fa-tag"  ></i></span>
                    <div style="position:absolute; top:2%; left:4%;"> 
                    <input type="text" class="form-control" placeholder="Nom de compte " name="login"/>
     
                  <div class="form-group input-group;">
                    <span class="input-group-addon"><i class="fa fa-lock"  ></i></span>
                    <input type="password" class="form-control" placeholder="Mot de passe" name="mdp" />
                  </div>
                  <input type = "submit" value = "Se connecter">
                    </div>
                </form>
        </div>
    </div>
    </body>
     
    </html>

  11. #11
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    ok, il s'agit d'une demande Javascript cette fois-ci et non plus de PHP j'ai l'impression...
    Par exemple, tu peux essayer d'ajouter ce code à la fin de ton fichier :
    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
    <script type="text/javascript">
     
        // Fonction pour masquer ou afficher les inputs
        function displayFormControl(show) {
            var inputs = document.querySelectorAll('.form-control');
            for (var i=0; i<inputs.length; i++) {
                inputs[i].style.display = show ? 'block' : 'none';
            }
        }
     
        // Au chargement de la page...
        var body = document.getElementsByTagName('body')[0];
        body.onload = function(){
     
            // On masque les inputs
            displayFormControl(false);
     
            // On reprogramme l'action du bouton submit
            var form = body.getElementsByTagName('form')[0];
            form.addEventListener('submit', function(evt) {
                if (document.querySelectorAll('.form-control')[0].style.display=='none') {
                    displayFormControl(true);
                    evt.preventDefault();
                }
            });
        };
     
    </script>
    De retour parmis vous après 10 ans!!

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

Discussions similaires

  1. [TIdSMTP] Envoi d'un mail avec authentification ?
    Par BACUS dans le forum C++Builder
    Réponses: 4
    Dernier message: 16/06/2004, 17h18
  2. [C#] Authentification sur les fichiers Pdf
    Par ensisoft dans le forum ASP.NET
    Réponses: 14
    Dernier message: 04/05/2004, 13h10
  3. [Débutant]Classe d'Authentification : compilation impossible
    Par acyclique dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 23/08/2003, 20h42
  4. Authentification Sécurisée
    Par HPJ dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 23/06/2003, 11h45
  5. [POSTGRES] pb configuration authentification
    Par Fyna dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 19/06/2003, 20h16

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