Partage
  • Partager sur Facebook
  • Partager sur Twitter

MySQL Certaines données non reconnues ou lues

    28 juillet 2021 à 11:53:34

    Bonjour,

    J'ai une requete assez simple qui vérifie l'existence d'un pseudo dans une base de données et j'ai remarqué que certains de ces pseudos ne sont pas reconnus. en clair, disons que dans ma base de données il y a 100 utilisateurs, l'un s'appelle rené, il ne le voit pas. si je modifie le champ et remplace rené par alexandre, ca fonctionne. le champ est en varchar 30 latin1_swedish_ci (celui par défaut) et l'instruction est : $resultat = mysqli_query($link, "SELECT pseudo FROM db WHERE pseudo = '$login'"); ca marche avec les autres pseudos. la ou c'est plus bizarre c'est que cela fonctionne normallement sur mon server local, mais que l'erreur ne se produit qu'en ligne ... j'ai d'autres pseudos avec des accents qui fonctionnent donc ca ne vient pas de la à priori. il y a des pseudos qui se ressemblent, genre rené, renéssent, renée et je me demande si le soucis ne vient pas de la.

    Si quelqu'un a une idée, ce serait grandiose, merci

    • Partager sur Facebook
    • Partager sur Twitter
      28 juillet 2021 à 23:51:34

      Laisse-nous deviner, tu ne fais pas de mysqli_set_charset (ou son équivalent OO) donc tu hérites, pour la connexion entre PHP et MySQL, d'un jeu de caractère par défaut qui n'est pas le même sur les 2 environnements ?

      PS : il y a vraiment une injection SQL sur la requête ?

      -
      Edité par julp 28 juillet 2021 à 23:51:56

      • Partager sur Facebook
      • Partager sur Twitter
        29 juillet 2021 à 8:40:23

        Hello,

        Effectivement, je n'utilise pas le set_charset, je suis un vieux programmeur, je me remet à la page et je vais aller vérifier ca de ce pas ;-). 

        Si tu entends par injection le fait que c'est une vraie requete et qu'elle contient des données ? oui, c'est une vraie, mais j'ai juste changé les noms et retiré les champs qui ne sont pas impactés.

        Merci en tout cas d'avoir pour ta réponse.

        edite : Hum il semble que sur mon server local cela reste en latin1_swedish mais que sur le serveur du l'hébergeur, ca passe en utf8, ceci explique donc peut-être cela. ca ne m'explique pas pourquoi andré fonctionne et pas rené par exemple. bon je verrais ca plus tard. Merci encore

        -
        Edité par coralocean 29 juillet 2021 à 9:12:40

        • Partager sur Facebook
        • Partager sur Twitter

        MySQL Certaines données non reconnues ou lues

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown