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 :

Vérifier si la variable existe dans la base de donnée [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2017
    Messages : 13
    Par défaut Vérifier si la variable existe dans la base de donnée
    J'aimerais vérifier dans ma base de donnée si une variable existe mais ça me mets :
    ( ! ) Warning: mysqli_query() expects parameter 1 to be mysqli, object given in C:\wamp\www\Projet\authentification\index.php on line 37
    ( ! ) Fatal error: Call to undefined function mysqli_result() in C:\wamp\www\Projet\authentification\index.php on line 38

    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
    <?php
     
     // à mettre tout en haut du fichier .php, cette fonction propre à PHP servira à maintenir la $_SESSION
    session_start();
    $error = false;
    $adminpageError = "";
    $code1Error = "";
    $code1noncorrespondError = "";
     
     
    try
    {
    // On se connecte à MySQL
    $mysqli = new PDO('mysql:host=localhost;dbname=projet;charset=UTF8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
    }
    catch(Exception $e)
    {
    // En cas d'erreur, on affiche un message et on arrête tout
    die('Erreur : '.$e->getMessage());
    }
     
    if (isset($_POST['valider'])) {
      $code1=$_POST['code1'];
      $code1 = htmlentities($_POST['code1'], ENT_QUOTES, "ISO-8859-1");
     
      if (empty($_POST['code1'])) {
        $error = true;
        $code1Error = "S'il vous plait entrez le code  .";
      } else {
     
        $req="SELECT COUNT(*) FROM `client` WHERE code1= '".$code1."'";
        $res=mysqli_query($req);
        if (mysqli_result($res,0)==0) {
          $error = true;
          $code1noncorrespondError = "S'il vous plait entrez le code n'est pas valide.";
        } else {
          header("location: acceuil.php");
        }
      }
    }
    ?>

  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
    Par défaut
    Le premier argument des fonctions mysqli est l'identifiant de connexion.
    Et on n'utilise pas htmlentities pour sécuriser une requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (isset($_POST['valider'])) {
       if (empty($_POST['code1'])) {
        $error = true;
        $code1Error = "S'il vous plait entrez le code  .";
      } else {
     
        $req="SELECT COUNT(*) FROM `client` WHERE code1= '".mysqli_real_escape_string($mysqli, $_POST['code1'])."'";
        $res=mysqli_query($mysqli,$req);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2017
    Messages : 13
    Par défaut
    ( ! ) Fatal error: Call to a member function execute() on a non-object in C:\wamp\www\Projet\authentification\index.php on line 36

    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
    <?php
     
    // à mettre tout en haut du fichier .php, cette fonction propre à PHP servira à maintenir la $_SESSION
    session_start();
     
    $mysqli = mysqli_connect("localhost", "root", '', "projet");
    if(!$mysqli) {
    echo "Connexion non établie.";
    exit;
    }
     
    $error = false;
    $adminpageError = "";
    $code1Error = "";
    $code1noncorrespondError = "";
     
     
    if (isset($_SESSION['username']) && $_SESSION['username'] =="admin") {
    $adminpageError = "<p><a href='inscription.php'>Admin page </a></p>";
    }
     
    if (isset($_POST['valider'])) {
    if (empty($_POST['code1'])) {
    $error = true;
    $code1Error = "S'il vous plait entrez le code .";
    } else {
    $req="SELECT COUNT(*) FROM `client` WHERE code1= '".mysqli_real_escape_string($mysqli, $_POST['code1'])."'";
    $res=mysqli_query($mysqli,$req);
    header("location: accueil.php");
    }
    }
     
    // Si tout va bien, on peut continuer
    // On récupère tout le contenu de la table client
    $req = $mysqli->prepare('SELECT * FROM `client` WHERE username = :username');
    $req->execute(array(':username' => $_SESSION['username']));
     
    // On affiche chaque entrée une à une
    while ($donnees = $req->fetch())
    {
    ?>

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $mysqli = new PDO('mysql:host=localhost;dbname=pr.......
    Entre mysqli_ et PDO, il faut choisir !

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

Discussions similaires

  1. vérifier si un valeur (email) existe dans la base de données
    Par Papidjo1456 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 05/04/2017, 11h46
  2. Réponses: 2
    Dernier message: 30/04/2012, 00h25
  3. [MySQL] Vérification de l'existence dans la base de données
    Par gadalla dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/05/2008, 09h54
  4. Réponses: 1
    Dernier message: 23/10/2005, 00h55
  5. Réponses: 2
    Dernier message: 20/05/2005, 10h18

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