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

  1. #1
    Chroniqueur Actualités
    Avatar de Patrick Ruiz
    Homme Profil pro
    Redacteur web
    Inscrit en
    Février 2017
    Messages
    2 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Redacteur web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2017
    Messages : 2 159
    Par défaut Une femme dont le nom est Null continue de rencontrer des problèmes avec les systèmes informatiques
    Une femme dont le nom est Null continue de rencontrer des problèmes avec les systèmes informatiques
    Car en IT Null désigne l'état d'un pointeur qui n'a pas de cible ou d'une variable qui n'a pas de valeur

    Pour la plupart des gens, le nom de famille est simplement un moyen de s'identifier. Mais pour ceux dont le nom de famille est « Null », c'est une source constante de frustration numérique. Et pour cause : Null est considéré par les systèmes informatiques comme l'état d'un pointeur qui n'a pas de cible ou d'une variable qui n'a pas de valeur. Cet état de choses entraîne une cascade de problèmes techniques pour tous ceux qui portent ce nom : documents de voyage refusés ou de contraventions inattendues, etc.

    Nontra Null, une créatrice de vêtements en Californie, ne connaît que trop bien ce combat. En 2014, elle s'est retrouvée coincée dans un cauchemar bureaucratique alors qu'elle demandait un visa pour assister au mariage d'une amie en Inde. Le système du consulat indien a tout simplement refusé de traiter sa demande, reconnaissant « Null » comme un champ vide plutôt que comme un véritable nom de famille. Après de multiples tentatives et une frustration croissante, son visa a finalement été délivré, juste un jour avant son départ. Pour éviter de tels maux de tête, Nontra utilise désormais son nom de jeune fille ou met un trait d'union dans son nom de famille chaque fois que c'est possible.

    Elle est loin d'être la seule à vivre cette épreuve. Jan Null, météorologue à Half Moon Bay, en Californie, rencontre régulièrement des problèmes lorsqu'il effectue des réservations d'hôtel en ligne. Il a appris à contourner le problème en ajoutant son initiale à son nom de famille pour éviter de se faire éjecter des systèmes de réservation.

    Joseph Tartaro, auditeur en cybersécurité, a quant à lui pensé qu'il serait astucieux d'utiliser « NULL » comme plaque d'immatriculation. Cette plaisanterie s'est rapidement retournée contre lui. En effet, les bases de données des forces de l'ordre utilisant souvent « null » pour remplacer des informations manquantes. C’est ainsi que ce dernier s'est retrouvé inondé de contraventions pour des voitures dont les plaques d'immatriculation n'avaient pas été enregistrées.

    Nom : 0.png
Affichages : 76073
Taille : 150,3 Ko

    La faute aux programmeurs ou aux conventions des années 60 ?

    L'origine du problème remonte aux années 1960, lorsque l'informaticien britannique Tony Hoare a introduit le terme « null » en tant que concept de programmation pour signifier l'absence de données. Ainsi, en php, une variable de valeur NULL est considérée comme non-définie :

    Code php : 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
    <?php
    $a=NULL;
     
    if(isset($a)) {
        echo '$a est définie';
    } else {
        echo '$a est indéfinie';
    }
     
    if(is_null($a)) {
        echo '$a est NULL';
    } else {
        echo '$a n\'est pas NULL';
    }
     
    if(isset($b)) {
        echo '$b est défini';
    } else {
        echo '$b est indéfini';
    }
     
    if(is_null($b)) {
        echo '$b est NULL';
    } else {
        echo '$b n\'est pas NULL';
    }

    Les personnes ayant pour nom Null ne sont pas les seules qui font face à des difficultés avec les systèmes informatiques. « J'ai travaillé avec une personne originaire d'Israël. Son nom de famille était/est Or. Il a essayé d'ouvrir un compte bancaire à la BOFA, et leur système ne pouvait littéralement pas accepter son nom. La solution a été de saisir son nom de famille comme 0r. Bien sûr, il m'a montré sa carte de guichet automatique et elle était bien là ! », rapporte un internaute.

    Et vous ?

    Ces comportements erratiques des systèmes informatiques face à ces noms particuliers peuvent-ils être considérés comme la faute des programmeurs ?
    Quelles solutions informatiques proposez-vous pour la résolution de ce type de problèmes ?
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 354
    Par défaut
    Bonjour,
    Citation Envoyé par Patrick Ruiz Voir le message
    Ces comportements erratiques des systèmes informatiques face à ces noms particuliers peuvent-ils être considérés comme la faute des programmeurs ?
    Tout à fait, car null (l'absence de valeur) n'est pas la même chose que "Null" ou 'Null' (la chaine de caractères).
    Citation Envoyé par Patrick Ruiz Voir le message
    Quelles solutions informatiques proposez-vous pour la résolution de ce type de problèmes ?
    Traiter une chaine comme une chaine, et un Null comme une absence de valeur.

    D'ailleurs en voyant le titre j'ai cru à une blague.

    Tatayo.

  3. #3
    Membre régulier
    Profil pro
    RSI
    Inscrit en
    Août 2002
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : RSI

    Informations forums :
    Inscription : Août 2002
    Messages : 10
    Par défaut
    Bonjour,

    Je pense qu'il y a une confusion, il n'y a, ici, aucun lien entre les problèmes des ces personnes et l'absence de valeur en programmation ou les pointeurs "null".

    Leurs problèmes viennent du fait que les programmeurs ont, par convention, utilisé la chaine de caractères "NULL" pour remplir les champs obligatoires dans leurs bases de données.

    Tant que personne ou aucune plaque d'immatriculation n'a cette valeur, il n'y a aucun problème, mais dés le moment ou l'on crée une personne avec ce nom ou une plaque d'immatriculation avec cette valeur, le système va logiquement associer toutes les données à la personne ou à la plaque d'immatriculation.

    Les programmeurs n'ont tout simplement pas imaginé que la valeur "NULL" pourrait un jour correspondre à un vrai personne ou a une immatriculation.


    Ces comportements erratiques des systèmes informatiques face à ces noms particuliers peuvent-ils être considérés comme la faute des programmeurs ?
    Peut-on dire que le comportement est erratique ? je ne suis pas convaincu, je pense que le programme fait exactement ce pourquoi il a été crée.
    Pour la responsabilité des programmeurs, qui d'autre pourrait être responsable ?

  4. #4
    Nb
    Nb est déconnecté
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 156
    Par défaut
    Bonjour,
    L exemple php fourni n est pas pertinent car isset ne sert pas a verifier si une variable est definie ou pas, elle sert à verifier qu une variable est definie ET non nulle.

    Sinon c est un probleme vieux comme l informatique due a de vieilles conventions ou a une incompréhension du la otion de null par les developpeurs.

  5. #5
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 508
    Billets dans le blog
    10
    Par défaut
    Comme je l'explique dans mon blog ICI, le marqueur null n'a rien à voir avec une chaîne de caractères.
    Null est un marqueur, et il est applicable sur tout type de données : numérique, alphanumérique, date... et il signifie que la valeur est inconnue.

    Une chaîne de caractères contenant la valeur "null" reste une chaîne de caractères, sa valeur est connue, c'est "null".

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 982
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 982
    Billets dans le blog
    6
    Par défaut
    Le NULL, pas si simple en SQL. D'après la norme SQL et le bon vieux Ted Codd inventeur des SGBD relationnels, le NULL (marqueur et non valeur) n'est doté d'aucun type de données... Mais alors quel type de données SQL possède la colonne de la vue suivante ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE VIEW V
    AS
    SELECT NULL AS C;
    À méditer...

    En SQL Server c'est du INT. En PostGreSQL c'est du TEXT...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    Membre émérite Avatar de sergio_is_back
    Homme Profil pro
    Consultant informatique industrielle, développeur tout-terrain
    Inscrit en
    Juin 2004
    Messages
    1 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique industrielle, développeur tout-terrain
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 180
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Le NULL, pas si simple en SQL. D'après la norme SQL et le bon vieux Ted Codd inventeur des SGBD relationnels, le NULL (marqueur et non valeur) n'est doté d'aucun type de données... Mais alors quel type de données SQL possède la colonne de la vue suivante ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE VIEW V
    AS
    SELECT NULL AS C;
    À méditer...

    En SQL Server c'est du INT. En PostGreSQL c'est du TEXT...

    A +
    Après le type de données n'est pas forcément important tant qu'il n'y pas un DataBinding derrière... Mais effectivement j'ai déjà eu le cas où ça pose problème (Avec des DataBinding justement)... La colonne attendue est de type X et la colonne renvoyée (avec le NULL) est de type différent...
    Cependant pour en revenir au sujet de l'article : Madame "NULL" (Une chaîne de caractère) n'est pas égal à NULL (Valeur non définie) si les codeurs ont bien fait leur boulot, d'ailleurs je ne crois pas qu'il y existe un SGBD où IsNull("NULL") renvoi vrai, mais ça c'est une histoire !
    Après j'ai aussi vu des développeurs écrire "\0" dans la base pour une chaine vide, sauf que si en C\C++ c'est une chaine vide c'est pas le cas pour le SGDBR derrière donc lorsqu'on faisait une requête avec une clause where column='' ou where len(column)=0 ça renvoyait toutes les lignes avec column="\0"

  8. #8
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 509
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 509
    Par défaut
    Le 5 novembre 2015, Christopher Null a publié un article sur ses mésaventures : Hello, I'm Mr. Null. My Name Makes Me Invisible to Computers.

    Le 6 mars 2021, Stephen Warwick a publié un article à propos d'un bogue rencontré par Rachel True : Author takes to Twitter after breaking iCloud with 'True' last name

    Citation Envoyé par Patrick Ruiz Voir le message
    Ces comportements erratiques des systèmes informatiques face à ces noms particuliers peuvent-ils être considérés comme la faute des programmeurs ?
    C'est la faute de tous ceux qui encouragent à coder à l'arrache. Beaucoup de managers en font partie. C'est hélas aussi le cas de beaucoup de développeurs. Il y a aussi des cas où c'est de la faute d'un client dans les cas où ce dernier a trop de pouvoir pour faire baisser à court terme les coûts de développement. Il y a beaucoup de cas par cas.

  9. #9
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 100
    Par défaut
    Quelle idée de s'appeler Null aussi.

    A moins d'inventer des mots, plutôt que d'utiliser des mots courants dans un langage informatique, il y a une probabilité même faible que ce mot soit aussi un nom de famille quelque part dans le monde.

    Exemple le mot Bonjour : implémentation Apple du protocole Zeroconf
    et en version anglaise : Hello : authentification biométrique Windows


    Je vais donner un scoop à ceux qui s'arrachent les cheveux pour régler le prob : il suffit de préfixer le nom avec un underscore par exemple.

    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  10. #10
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 487
    Par défaut
    ça me rappelle l'histoire de little bobby tables :-)

  11. #11
    Membre émérite Avatar de stigma
    Homme Profil pro
    Créateur jeux vidéo
    Inscrit en
    Octobre 2003
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Créateur jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 126
    Par défaut
    c'est un peu comme le NOP en assembleur.

  12. #12
    Membre très actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2019
    Messages
    570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2019
    Messages : 570
    Par défaut
    Citation Envoyé par sergio_is_back Voir le message
    Après le type de données n'est pas forcément important tant qu'il n'y pas un DataBinding derrière... Mais effectivement j'ai déjà eu le cas où ça pose problème (Avec des DataBinding justement)... La colonne attendue est de type X et la colonne renvoyée (avec le NULL) est de type différent...
    Cependant pour en revenir au sujet de l'article : Madame "NULL" (Une chaîne de caractère) n'est pas égal à NULL (Valeur non définie) si les codeurs ont bien fait leur boulot, d'ailleurs je ne crois pas qu'il y existe un SGBD où IsNull("NULL") renvoi vrai, mais ça c'est une histoire !
    Après j'ai aussi vu des développeurs écrire "\0" dans la base pour une chaine vide, sauf que si en C\C++ c'est une chaine vide c'est pas le cas pour le SGDBR derrière donc lorsqu'on faisait une requête avec une clause where column='' ou where len(column)=0 ça renvoyait toutes les lignes avec column="\0"
    A mon avis ça sent les webapp Javascript et ou un texte "Null" peut se retrouver à être converti en null comme par exemple un classique JSON.parse(prenom) et que prenom s'avère être 'null' BIM tu te retrouve avec un null envoyé au backend alors que pourtant t'avais un contrôle coté formulaire mais oui c'est une erreur de mauvaise conception de base.

  13. #13
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 908
    Par défaut
    Citation Envoyé par L33tige Voir le message
    A mon avis ça sent les webapp Javascript et ou un texte "Null" peut se retrouver à être converti en null comme par exemple un classique JSON.parse(prenom) et que prenom s'avère être 'null' BIM tu te retrouve avec un null envoyé au backend alors que pourtant t'avais un contrôle coté formulaire mais oui c'est une erreur de mauvaise conception de base.
    N'importe quoi !
    En JSON, le null s'exprime sans guillemet.
    S'il y a des guillemets c'est une chaine et JSON.parse le traite comme tel

  14. #14
    Membre Expert
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 545
    Par défaut
    Citation Envoyé par chrtophe Voir le message
    Quelle idée de s'appeler Null aussi.

    A moins d'inventer des mots, plutôt que d'utiliser des mots courants dans un langage informatique, il y a une probabilité même faible que ce mot soit aussi un nom de famille quelque part dans le monde...
    Personnes portant le nom de famille Null:

    Ashley Null, théologienne anglicane américaine, Christopher Null (né en 1971), écrivain et critique de cinéma américain ; Eduard van der Nüll (1812-1868), architecte autrichien ; Gary Null (né en 1945), animateur de radio américain et auteur d'ouvrages sur la médecine alternative, Keith Null (né en 1985), joueur de football américain ; Luke Null (né en 1990), acteur et comédien américain

    Source Wikipedia: Null
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

    Liste des balises BB

  15. #15
    Membre actif
    Homme Profil pro
    Inscrit en
    Octobre 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 39
    Par défaut
    Mon avis et pour faire court !
    Une chaine entrante alphanumérique (un nom de personne) est une chaine a guillemets...
    S'il y a des guillemets c'est a prendre comme chaine de caractère : "NUll" ou "TARTEMPION".
    Jusque là rien de transcendant !
    Donc, logiquement cette prétendu "variable" qui est une chaine de caractère ne peut pas se transformer en NUll" (Variable) !
    Quand bien même cette chaine serve à contenir des "sous informations" puisque ses dernières ont forcément des valeurs soit numérique, alphanumérique ou opérand!
    Ces valeurs normalement ne servent pas dans des opération mathémathique, sauf si le programmeur a fait des doublons de commande, je pense que le programme devrait faire un "by Zero"
    ou un Missing opérant, un truc du genre et dans ce cas, il est par définition fautif
    ceci dit, je constate de nombreuses erreurs dans des traitement de texte avec "{ } < > / ", parfois les textes entre ses balises, n'apparaissent même plus, cela est rendu possible du fait qu'internet par exemple est pris en compte comme une commande ou un renvoi vers ... Bien pratique pour les pirates informatique.

  16. #16
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 741
    Par défaut
    Salut à tous.

    Je ne sais pas si vous avez remarqué mais les noms qui sont en causes sont : "null", "or, "true". Ce sont tous des mots réservés !

  17. #17
    Membre très actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2019
    Messages
    570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2019
    Messages : 570
    Par défaut
    Citation Envoyé par popo Voir le message
    N'importe quoi !
    En JSON, le null s'exprime sans guillemet.
    S'il y a des guillemets c'est une chaine et JSON.parse le traite comme tel
    Je pense que tu devrais arrêter de parler

    Nom : Capture d’écran 2025-02-27 093505.png
Affichages : 2392
Taille : 3,0 Ko

    Du coup si t'as un formulaire avec un texte qui contient null et qu'il est parse dans dans ce qui est envoyé au back il va se passer quoi ? t'as 1h pour trouver la réponse tkt

    Littéralement 5 secondes pour vérifier tes dires, et 6 likes en plus j'hallucine faut changer de métier

    On parle ici d'une erreur donc potentiellement quelque-chose qui à été fait par un débutant, pour moi c'est une erreur qui peut se produire comme cela, après, si t'as une meilleure idée hein hésite pas à partager

  18. #18
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 509
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 509
    Par défaut
    Citation Envoyé par L33tige Voir le message
    Nom : Capture d’écran 2025-02-27 093505.png
Affichages : 2392
Taille : 3,0 Ko

    Du coup si t'as un formulaire avec un texte qui contient null et qu'il est parse dans dans ce qui est envoyé au back il va se passer quoi ?
    • JSON.parse("\"Pyramidev\"")"Pyramidev"
    • JSON.parse("\"null\"")"null"
    • JSON.parse("null")null
    • JSON.parse("Pyramidev")Uncaught SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

    Si on fait un JSON.parse(prenom) et que la chaîne prenom est bien supposée être un JSON qui ne contient qu'une chaîne, alors la chaîne prenom doit avoir des guillemets, par exemple "\"Pyramidev\"" et non pas "Pyramidev". Sinon, on se prend une exception SyntaxError dans le happy path.

    Si, au lieu de valoir "\"Pyramidev\"", prenom vaut "\"null\"", alors JSON.parse(prenom) retourne bien la chaîne "null" et non pas null.

  19. #19
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 354
    Par défaut
    Je ne connais pas JavaScript, mais ce que je retiens ici est que si:
    1. Les données proviennent d'un formulaire de saisie
    2. Je saisie Null dans le "champ" prenom
    3. JSON.Parse(prenom) retourne null (la "non valeur")

    J'en déduis que la saisie d'une chaîne quelconque doit provoquer une erreur (celle indiquée par Pyramidev).
    Dans le cas contraire, "null" est une chaîne comme une autre, et ne doit pas poser plus de problème que "Jacques" ou "exit".

    Tatayo.

  20. #20
    Membre éclairé Avatar de pierre.E
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Janvier 2016
    Messages
    248
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2016
    Messages : 248
    Par défaut madame true 🤣
    portant le même nom que la ville où je vie j ai eu quelque problème avec le logiciel de réservation utilisé par la pâtisserie
    Quand la vendeuse rentrait mon nom ca lui sortait tous les clients de sa liste qui habitaient la ville.
    Bon ça a été corrigé depuis.

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/10/2010, 13h05
  2. Réponses: 6
    Dernier message: 08/02/2007, 15h41
  3. Réponses: 7
    Dernier message: 25/10/2005, 16h19
  4. Réponses: 17
    Dernier message: 03/10/2005, 12h16
  5. [Reflection] Executer une fonction dont le nom est contenu dans un String
    Par christobal dans le forum API standards et tierces
    Réponses: 8
    Dernier message: 05/07/2004, 16h23

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