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 :

Checker une valeur en bdd depuis une page php


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
    Novembre 2022
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2022
    Messages : 32
    Par défaut Checker une valeur en bdd depuis une page php
    Bonjour


    Depuis maintenant 2 ans, j'ai une page php qui me servais à renseigner 2 valeurs pour qu'elles s'enregistraient en base de données :
    - une date
    - un numero de serie ( code EAN 13 )

    Nom : Sans titre.png
Affichages : 221
Taille : 19,1 Ko



    Avec une seconde page php, je controlais manuellement si un numero de serie etait present en base ou non ,simplement en renseignant mon numero de serie dans un champ dans cette page
    cette meme page allait tout simplement interroger la base et me retournait l'info : Soit le numero de serie est present avec cette date, Soit non present
    Cela marchait tres bien




    Auhjourd'hui les numeros de serie ont evolué
    Ce ne sont plus des EAN 13 mais de cette forme JOY5-ER46-70VK-41AN-LFGQ

    L'enregistrement est ok en base avec cette nouvelle structure de numero de serie
    Mais l'interrogation avec ma seconde page ne fonctionne plus,c'est a dire, que si le numero de serie est bien present en base, cette page me retourne le contraire " Numero de serie iniexistant ",
    je pense que c'est la requete qui n'est plus adapté aux lettres
    Nom : Sans titre34.png
Affichages : 228
Taille : 45,3 Ko
    Nom : Sans titre45.png
Affichages : 223
Taille : 25,9 Ko
    mon code pour la visualisation

    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
      <?php
         mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
     
     
        $host = "localhost";
        $userName = "user";
        $password = "password";
        $dbName = "ma_base";
     
         $base = mysqli_connect($host, $userName, $password, $dbName)or die("Erreur de connexion");  
         $serial = mysqli_real_escape_string($base,$_GET['serie']??0);            
         $result = mysqli_query($base,"select date FROM contact_form_info WHERE serial ='".$serial."'");
         $numRows=mysqli_num_rows($result);
       if($numRows>0){
         $rows = mysqli_fetch_all($result, MYSQLI_ASSOC);
     
            foreach ($rows as $row) {  
      	       echo "<pre>";  /// Mise en forme 
                  echo "<span style='color: blue;'>Fecha de Fabrica :</span>".$row["date"].""; 
               echo "\n";
               echo "<span style='color: green;'>Numero de Serie :</span>".$serial;
               echo "</pre>";  /// Mise en forme fin
            }//fin foreach
         }//fin if($numRows>0)
         else{
         	  echo "<pre>";  /// Mise en forme
         	  echo "<span style='color: red;'>El numero de serie NO existe</span>";
            echo "</pre>";  /// Mise en forme fin
        }
    ?>
    je pense que cela vient de :
    ou


  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 511
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 511
    Par défaut
    Bonjour,

    Avez-vous vérifié le contenu de $_GET["serie"] et $serial avant de les utiliser dans la requête ? attention aux espaces...

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2022
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2022
    Messages : 32
    Par défaut
    Bonjour Touffik

    Merci a nouveau pour ton retour

    Le code fonctionne parfaitement bien en l'état pour retourner mes valeurs numériques (dans mon cas des Ean 13 )

    Maintenant tu me proposes de modifer le script avec 'serie' par "serie" ,afin que mes nouveaux numéros de serie alphanumérique puisse fonctionner ?

    Je ferais le test demain.

  4. #4
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 511
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 511
    Par défaut
    Bonjour,

    Citation Envoyé par david77185 Voir le message
    Maintenant tu me proposes de modifer le script avec 'serie' par "serie" ,afin que mes nouveaux numéros de serie alphanumérique puisse fonctionner ?
    Non, apostrophe ou guillemet ça ne changera rien, mais je voulais dire qu'il faudrait voir les valeurs des variables et t'assurer qu'ils ne contient pas des espaces en trop ou bien des retour à la ligne en début et fin de chaîne, la même chose pour la valeur enregistrée dans la table MySQL.

    Vous pouvez utiliser MySQL TRIM

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2022
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2022
    Messages : 32
    Par défaut
    Non, touffik

    Je suis sur, il n'y a pas d'espace dans le nouveau numero de serie que je tente d'appeler

    ex:/ JOY5-ER46-70VK-41AN-LFGQ

    Pas d'espace avant et apres pendant l'enregistrement depuis ma page
    Bonne insertion en base
    J'ai meme edité le champ dans la base sous phpmyadmin, pas de soucis, aucun blanc

    Donc pour resumer, tu me dis que ce code devrait fonctionner pour de l'alphanumerique aussi ?

    Bien à toi

  6. #6
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 511
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 511
    Par défaut
    Oui, j'ai testé le code tel qu'il l'est, et il fonctionne sans problème, à moins que l'interclassement de la table MySQL n'est pas bon..., généralement c'est "utf8mb4_general_ci" qu'il faut utiliser.

Discussions similaires

  1. [AJAX] passage de valeur pour une page php depuis un formulaire
    Par Ministar dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/09/2007, 21h29
  2. Réponses: 8
    Dernier message: 04/07/2007, 12h51
  3. passer des arguments depuis un lien hypertxte vers une page php
    Par killer_instinct dans le forum Langage
    Réponses: 5
    Dernier message: 28/04/2007, 12h18
  4. Réponses: 4
    Dernier message: 11/08/2006, 13h43
  5. Réponses: 1
    Dernier message: 22/09/2005, 15h46

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