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 :

verification de l'utilisateur


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations forums :
    Inscription : Janvier 2012
    Messages : 61
    Par défaut verification de l'utilisateur
    Bonsoir tout le monde je suis entrain de développer un système de messagerie privée , passons au code qui va etre un peu plus explicatif

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php if ($_SESSION['MM_Username']==$_GET['pseudo'] ){
     
    		  echo 'vous pouvez changer votre pass';
    		  }
    		  else {
    		  echo 'envoyer message a '.$_GET['pseudo'].' ';
     
    		  }
    		   ?>

    je passe la variable pseudo dans l'url si elle =la variable de session j'affiche les identifiant relatif au membre sinon j'affiche l'option d'envoie de l'url au membres choisi mais si on change la variable d'url a quelque chose comme "gskdg"" on envoie le message a "gskdg" je voudrais savoir comment faire pour vérifier si l'utilisateur existe belle et bien dans la BDD avant d'envoyer un message et merci

  2. #2
    Membre éprouvé
    Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2002
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 121
    Par défaut
    bonjour,

    C'est bizarre mais quelque chose me dis que tu vas devoir interroger ta base de donnée.
    Et la facon de le faire va dépendre de ton SGBD.

    MySQL, SQL Server, Oracle, Access(ouais je sais la blague, mais ca se fait donc.)
    je ne saurais que te renvoyer sur php.net pour trouver les methodes d'acces a ton SGBD et vu que je suis en forme aujourd'hui je te montre a quoi ca ressemble pour MySQL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $db = mysql_connect("localhost", "mysql_user", "mysql_password");
    mysql_select_db("database", $db);
     
    $result = mysql_query("SELECT * FROM TABLEPSEUDO WHERE pseudo='".$_GET['pseudo']."'", $db);
    $num_rows = mysql_num_rows($result);
    if ($num_rows == 1){
       echo "le pseudo existe";
    }else{
     echo "Le pseudo n'existe pas.";
    }
    ?>
    Après, c'est quasiment pareil pour tout les SGBD.
    Tu peux aussi regarder du coté de PDO

    Cordialement

  3. #3
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Ouais et sinon exit la sécurisation de la requête et du paramètre GET ??

    Bref, voici une alternative bien plus satisfaisante en termes de sécurité.

    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
    <?php
     
    function user_exists (PDO $connection, $login) {
        if (!$connection) {
            throw new InvalidArgumentException("Firt argument is exepected to be a valid PDO instance, null given");
        }
     
        $query = "SELECT COUNT(*) FROM `users` WHERE `login`=:login";
        $stmt  = $connection->prepare($query);
        if (!$stmt->execute(array('login' => $login))) {
            trigger_error("Query Error: $query", E_USER_WARNING);
            return false;
        }
        return (boolean)$stmt->fetchColumn();
    }
     
    $connection = new PDO('mysql:dbname=testdb;host=127.0.0.1')
    $login      = filter_input(INPUT_GET, 'pseudo', FILTER_SANITIZE_STRING);
     
    if (user_exists($connection, $login)) {
        echo "L'utilisateur $login existe";
    }
    else {
        echo "L'utilisateur $login n'existe pas";
    }

Discussions similaires

  1. verification de l'utilisateur
    Par mezned dans le forum Shell et commandes POSIX
    Réponses: 2
    Dernier message: 30/11/2010, 16h08
  2. interface utilisateur avec OpenGL
    Par demis20 dans le forum OpenGL
    Réponses: 6
    Dernier message: 03/10/2002, 12h27
  3. Réponses: 8
    Dernier message: 05/06/2002, 11h55
  4. verification de doublons dans un tableau
    Par bohemianvirtual dans le forum C
    Réponses: 11
    Dernier message: 25/05/2002, 12h21
  5. [Kylix] Sauvegarde de donnée utilisateur....
    Par Eclypse dans le forum EDI
    Réponses: 1
    Dernier message: 11/05/2002, 17h21

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