Petit problème PHP

Résolu
Bonjour à tous.
Voila j'ai un petit soucis avec cette ligne de code :

if (strlen($vitesse)>5 || !is_int($vitesse)) {$erreur=1; ECHO "<font size=\"2\" face=\"Verdana\" color=\"#FF0000\">- Mauvais score (vitesse)</font><br>"; $vitesse=0;}



Si $vitesse = 12200 par exemple, on obtient Mauvais score, alors que sa longueur est inferieure à 5 et c'est un nombre entier.

Merci pour vos réponses. :-)

2 réponses

  1. Bonjour,

    J'ai testé votre code, il est très valable, quand la variable contient 12200, le code inclus dans le if ne s'exécute pas. Etes-vous sûr de la valeur de $vitesse, le cas échéant, placez un echo $vitesse pour le vérifier.
    1. ok.

      Alors voici mon code :

      Dans un fichier includeinscription.php :
      Ya un echo "[...]<form method=\"POST\" action=\"inscriptionmembres.php\"  name=\"form\">[...]<input type=\"text\" VALUE=\"$vitesse\" name=\"vitesse\">[...]


      Dans la page :
      si le formulaire n'a pas déja été rempli -> include("includeinscription.php")
      
      [...]if (strlen($vitesse)>5 || !is_int($vitesse)) {$erreur=1; ECHO "<font size=\"2\" face=\"Verdana\" color=\"#FF0000\">- Mauvais score (vitesse)</font><br>"; $vitesse=0;}[...]
      include("includeinscription.php")
      


      Voila. La valeure de $vitesse est toujours égale à 0 ! :-/
    2. Contributeur
      Ce que tu peux faire, c'est convertir ta chaine:
      $vitesseInt = 1 + $vitesse -1;
      et faire:
      if (strlen($vitesse)>5 || !is_int($vitesseInt))
  2. Contributeur
    Bonjour!

    Non, sa longueur est égale à 5! Donc, ça ne passe pas!
    si tu veux que ça passe, il faut mettre:
    strlen($vitesse)>=5

    :)
    1. merci pour la réponse rapide... mais
      avec $vitesse = 123 ca marche pas non plus.
      J'ai la variable vitesse avec une champ texte de formulaire, peut-être que ca vient de là.