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 :

prob verif infos connexion [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut prob verif infos connexion
    Bonjour,

    J'ai un soucis dans l'envoi de mon formulaire d'identification sur mon site, quand j'envoi, mon serveur apache qui se trouve sur un serveur ubuntu me dit qu'il ne peut pas exécuter ma requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "SELECT nom_user, pass_user FROM users WHERE nom_user = '$login' AND `pass_user`= '$pass'";
    Voila mes pages de saisis et d'envoi

    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
    <?php
    DEFINE ('USER', 'root');
    DEFINE ('PASSWORD', '');
    DEFINE ('HOST', 'localhost');
    DEFINE ('DBNAME', 'vincealex');
     
    $dbc = @mysql_connect (HOST , USER, PASSWORD);
    mysql_select_db (DBNAME);
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Bienvenue chez Vincent & Alexandre</title>
    </head>
     
    <body bgcolor="#000000">
    <table width="100%"><tr><td align="center">
    <table cellpadding="0" cellspacing="0">
      <tr>
            <td width="575" height="524" background="images/index_02.png"></td>
      </tr>
    </table>
      <table cellpadding="0" cellspacing="0">
          <tr>
     
    <form method="post" action="authentification.php" enctype="multipart/form-data">
            <td width="25" height="63" background="images/index_04.gif"></td>
            <td width="101" height="63" background="images/index_05.gif"></td>
            <td width="219" height="63" background="images/index_06.gif"><input type="test" name="login" /></td>
          </tr>
        </table>
        <table cellpadding="0" cellspacing="0">
          <tr>
            <td width="25" height="56" background="images/index_04bis.gif"></td>
            <td width="102" height="56" background="images/index_08.gif"></td>
            <td width="218" height="56" background="images/index_09.gif"><input type="password" name="pass" /></td>
          </tr>
        </table>
        <table cellpadding="0" cellspacing="0">
          <tr>
            <td width="575" height="56" align="center"><input type="submit" src="images/entrer.gif"/></td>
          </tr>
        </table>
      </tr>
    </form>
    </table>
    </td></tr></table>
    </body>
    </html>
    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
    <?php
    DEFINE ('USER', 'root');
    DEFINE ('PASSWORD', '');
    DEFINE ('HOST', 'localhost');
    DEFINE ('DBNAME', 'vincealex');
     
    $dbc = @mysql_connect (HOST , USER, PASSWORD);
    mysql_select_db (DBNAME);
     
     
    session_start();
     
    $login = $_POST['login'];
    $pass = $_POST['pass'];
     
     
    $sql = "SELECT nom_user, pass_user FROM users WHERE nom_user = '$login' AND `pass_user`= '$pass'";
    $result = mysql_query($sql) or die ('Erreur SQL : impossible d\'effectuer la requête :
    '.$sql);
             for($i=0;$i<mysql_num_rows($result);$i++)
             {
              $row=mysql_fetch_assoc($result);
    if($row["nom_user"] = $_POST['login'] && $row["pass_user"] = $_POST['pass'])
    {
    // Nous avons bien le bon utilisateur
    // Nous créons la variable de session
    $_SESSION['auth']="AUTH : OK";
    header("location: accueil.php");
    }
    elseif ($row["nom_user"] == $_POST['login'] || $row["pass_user"] == $_POST['pass'])
    {
    // Nous n'avons pas les bonnes informations
    // On renvoi vers la page d'authentification
    header("location: index.php");
    }}
     
    ?>
    merci pour votre aide

  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 l'erreur ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    D'une part quand je l'execute sur mon serveur linux l'explorateur me dit qu'il ne peut pas exécuter la requête et au lieu de me rediriger sur la page de log si je ne rentre pas les bonnes infos, il reste sur sur la page de verif des infos.

    J'ai vu cette erreur car sur mon pc windows, sur lequel j'utilise easyphp pour développer le site ça fonctionne excepté la redirection

  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
    Est-ce que tu pourrais nous donner les erreurs exactes ?

    Active bien l'affichage des erreurs mysql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ini_set('mysql.trace_mode', true);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    ou peut être chmod +x ???
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    Voila le message d'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Erreur SQL : impossible d'effectuer la requête :
    SELECT nom_user, pass_user FROM users WHERE nom_user = 'a' AND `pass_user`= 'a'
    et le chmod n'a rien fait

  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
    Est-ce que tu as fais ce que je t'ai indiqué ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    Voila ce qu'il me met avec ta commande quand je rentre les mauvais identifiants

    en local sur easyphp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0
    mais en distant sur mon serveur linux

    il me remet le message d'erreur que j'ai mis au dessus

  9. #9
    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
    enlève ton or die.... et fais un après ta requête.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    La commande ne me renvoi pas d'erreur supplémentaire à part le impossible d'exécuter la requête

  11. #11
    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
    Tu ne peux pas avoir "impossible d'executer la requête" puisque je t'ai demandé de le retirer.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    attends ton ini_set je dois le mettre où? je l'ai mis dans le dé but de ma page de verif de mes infos entre les bornes php

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    Donc j'ai fait des modifs en local sous easyphp c ok mais sur mon serveur à distance ça me met ça

    Erreur SQL !
    SELECT COUNT(num_user) AS total, nom_user, pass_user FROM users WHERE nom_user = '' AND pass_user = ''
    Access denied for user 'www-data'@'localhost' (using password: NO)
    je remet mon code de ma page de verif

    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
    <?php
    DEFINE ('USER', 'root');
    DEFINE ('PASSWORD', '');
    DEFINE ('HOST', 'localhost');
    DEFINE ('DBNAME', 'vincealex');
     
    $dbc = @mysql_connect (HOST , USER, PASSWORD);
    mysql_select_db (DBNAME);
     
     
    session_start();
     
     
    $login = $_POST['login'];
    $pass = $_POST['pass'];
     
    $sql = "SELECT COUNT(num_user) AS total, nom_user, pass_user
    FROM users
    WHERE nom_user = '".mysql_real_escape_string($_POST['login'])."'
    AND pass_user = '".mysql_real_escape_string($_POST['pass'])."'";
    $req = mysql_query($sql) or exit('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
    $user = mysql_fetch_array($req);
    echo mysql_error();
     
    if ((int)$user['total'] > 0) {
        header('Location: accueil.php');
    }
    else {
        header('Location: index.php');
    }
     
    ?>

  14. #14
    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
    Controle ce que contiens ton $_POST (visiblement rien ou du moins pas ce que tu penses).
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Points : 51
    Points
    51
    Par défaut
    C'est bon ça fonctionne

    merci

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/07/2011, 11h41
  2. prob java pool connexion sqlnestedexception
    Par polux52 dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 04/01/2007, 17h13
  3. Réponses: 2
    Dernier message: 27/09/2006, 18h11
  4. prob dans ma connexion
    Par flo456 dans le forum ASP
    Réponses: 21
    Dernier message: 27/03/2006, 11h11
  5. [infos]connexion applet client+serveur
    Par freums dans le forum Applets
    Réponses: 5
    Dernier message: 25/08/2005, 09h57

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