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 :

Vérifier qu'une chaine de caractères est un entier


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 56
    Points : 34
    Points
    34
    Par défaut Vérifier qu'une chaine de caractères est un entier
    Bonsoir à tous !

    J'ai écrit un petit code pour vérifier que toutes les lignes de mon fichier texte sont des entiers.
    Et s'il existe une ligne qui contient un caractère alphabétique, il me redirige vers une autre page et affiche un message d'erreur.
    Mais lorsque j'exécute le code, il me redirige toujours vers cette page, même si toutes les lignes sont des entiers.
    Lorsqu'il y'a un caractère alphabétique, il affiche le message d'erreur avec la ligne correspondante.
    Mais lorsqu'il n'y a pas de caractère alphabétique dans le fichier, il me redirige toujours vers cette page prévue et affiche toujours le message d'erreur et ne met aucune ligne correspondante.

    Voici mon code:
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    <?php
     
    set_time_limit(0);
    error_reporting(E_ALL ^ E_NOTICE);
     
    mysql_connect('localhost','root','');
    mysql_select_db('gestnum');
     
     
    //on mesure la longueur des différentes lignes du fichier
     
    $handle = fopen("fichiernumcr.txt", "r");
    $i=0;
     
    while (($taille = fgetcsv($handle, 0, "\n")) !== FALSE)
            {
    $i++;        
    $nul = strlen($taille[0]);
     
     
    // On verifie que le fichier ne contient que des entiers
     
    if (ctype_digit($taille[0]))
        {
          //$entier=1;
    	  //$ligne=$i;
    	  //echo 'La chaîne '. $entier .' est bien un entier<br/>';
        }
        else
        {
    	  $entier1=0;
    	  $ligne=$i;	
        }
     
             } 
     
     
    	 //Erreur fichier quand il contient des lettres
     
       if($entier1 ==0)
       {
       header('Location: ../gestionnaire-mdn/gerer-les-mdn-a-creer.php?er3=fstr1');
     
       }
     
     
    ?>
    Je ne comprends plus rien.
    S'il vous plait aidez moi.
    Merci d'avance.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Pourquoi tu utilises fgetcsv si ton fichier n'en est pas un ?
    Utilise fgets() et trim() ta ligne pour ne pas avoir les retours chariots.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    En attente de confirmation mail Avatar de gd_dev
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2003
    Messages : 79
    Points : 129
    Points
    129
    Par défaut Initialisation
    Bonjour,

    Vous ne voyez pas l'erreur car vous avez désactiver l'affichage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set_time_limit(0);
    error_reporting(E_ALL ^ E_NOTICE);
    Mais la variable $entier1 n'est pas initialisée et donc le test passe.

    Par example

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
     
    set_time_limit(0);
    error_reporting(E_ALL ^ E_NOTICE);
     
    if($tutu == 0)
    {
    	print "passe";
    }
    Au lieu de


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
     
    $tutu = 1;
     
    if($tutu == 0)
    {
    	print "passe pas";
    }
    Bonne journée
    Giuse

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 56
    Points : 34
    Points
    34
    Par défaut
    Merci beaucoup pour votre AIDE.
    Salut !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Batch] Vérifier si une chaine de caractères est présente dans un fichier
    Par jp_____ dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 23/08/2013, 10h40
  2. tester si une chaine de caractère est un entier ?
    Par farid0031 dans le forum C++Builder
    Réponses: 7
    Dernier message: 12/05/2009, 16h32
  3. Vérifier qu'une chaine de caractère est bien présente
    Par kilian67 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 28/09/2007, 18h10
  4. Réponses: 9
    Dernier message: 19/10/2006, 17h02
  5. [VBA-E] Vérifier si une suite de caractère est présente
    Par Mut dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 21/03/2006, 10h44

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