Différents formats de chiffres selon les ordis ??

  • Auteur de la discussion Auteur de la discussion Tdv
  • Date de début Date de début
WRInaute discret
Bonjour à tous...

J'ai rencontré un problème étrange avec un programme PHP assez simple (type vérification humain / programme), qui compare la somme de 2 nombres envoyés chacun dans un champ hidden avec un nombre entré par l'internaute censé etre la somme des deux précédents, le tout envoyé par un même formulaire...

Pour la plupart des cas, le programme reconnait le nombre comme étant la somme des deux premiers... mais pour quelques internautes, rien à faire !?? .. et l'un d'eux m'a dit que cela marchait de l'un de ses ordis et pas de l'autre (même OS) !

Donc question : Les chiffres tapés peuvent ils présenter une différence selon le type de clavier, d'ordinateur ou... ??

A la recherche d'une explication.... Merci d'avance !
 
WRInaute discret
Ok (merci), je le ferai dès que possible càd demain... Est-ce à dire que certains claviers / ordis renvoient des nombres "nombres" et d'autres des nombres "caractères" ??

Si c'est la solution, je suis quand même curieux de connaitre la cause...
 
WRInaute impliqué
Ah non j'ai pas dis ça, mais quand je manipule des chiffres en php, je n'ai jamais de soucis grace à cette fonction :D
 
WRInaute accro
bgdc a dit:
Salut,

essaye cette fonction : intval() juste pour voir.

Détermine si une variable est de type nombre entier:

Code:
if(is_int($string)) echo 'true';
else echo 'false';

>> Si c'est la solution, je suis quand même curieux de connaitre la cause...

Tu dois avoir une coquille dans ton code. supprimes-tu bien les espaces inutiles lors de la soumission ? Envoie ton code si tu arrive pas a debuger.
 
WRInaute passionné
y a gettype et settype qui est bien aussi

rog

j'ai remarqué qu'il y a des differences entre le pavé numérique et les majuscules avec certains claviers sous linux

rog
 
WRInaute discret
KOogar a dit:
Tu dois avoir une coquille dans ton code. supprimes-tu bien les espaces inutiles lors de la soumission ? Envoie ton code si tu arrive pas a debuger.

Les espaces inutiles... que l'internaute aurait saisi par erreur ?! arrivés là de quelle manière ?

Merci, je vois ça demain.
 
WRInaute accro
Tdv a dit:
KOogar a dit:
Tu dois avoir une coquille dans ton code. supprimes-tu bien les espaces inutiles lors de la soumission ? Envoie ton code si tu arrive pas a debuger.

Les espaces inutiles... que l'internaute aurait saisi par erreur ?! arrivés là de quelle manière ?

Merci, je vois ça demain.

ca arrive frequement qu'un internaute accidentellement mette un espace avant le texte. ou peut etre dans ton cas c'est le pavé numerique du navigateur qui beug.

dans un premier temps, c'est toujours bon d'enlever les espaces inutiles dans un formulaire :

Code:
<?php 
  $chaine = ' Supprimer les espaces en début et fin de chaine '; 
  $chaine = trim($chaine); 
  ?>

Sinon fait un print de ta variable et demande a la personne qui test de regarder ce qui s'affiche. A mon avis, c'est juste une coquille dans ton code.
 
WRInaute discret
Bon, eh bien, ni intval(), ni les espaces ne sont venus à bout du probleme :/

Un internaute (sur 100, peut etre moins qu'avant, mais difficile d'etre sûr) à nouveau vient de buter à répétition sur cette addition - simple - de deux chiffres... Pas d'explication...
 
WRInaute discret
Hem, désolé fausse alerte, ça semble marcher.... simplement pour certains 2924 + 4 = .. 2924 + 4 , je vais patcher :)

Merci quand meme, rog
 
WRInaute occasionnel
n'hésite pas, quand tu as ce type de remontées, à stocker (ex: dans des fichiers) ce qui est soumis et ce qu'on te répond, de préférence avec l'ip, l'user-agent du visiteur, etc
très utile pour voir qui est le boulet ;)
 
Discussions similaires
Haut