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

Langage PHP Discussion :

Comparaison de chaine qui ne marche pas


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 28
    Points : 18
    Points
    18
    Par défaut Comparaison de chaine qui ne marche pas
    Bonjour

    Je veux en fait rechercher le mot "anniversaires" dans une source d'un fichier sur internet.

    Mais ce code produit l'erreur suivante :
    $donnees prend la valeur "anniversaires" des qu'il voit le if !

    pourtant quand j'affiche $donnees sans le if $donnees parcourt tres bien le fichier... et trouve meme "anniversaires".

    Voici le 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
    <html>
    <head>
    <title>Filtre</title>
    </head>
    <body>
    <?
    $fileIndex = fopen('http://www.XXX.fr/index.php', 'r');
    $donnees = "             ";
     
    while (!feof($fileIndex)){
     
    	if (strcmp($donnees, "Anniversaires") == 0) // meme resultat pour $donnees == "Anniversaires"
    	{
    			//traitement
    	}
    	else
    	 {
    		$donneesNew = substr($donnees, 1); //on enleve le premier caractere
    		$car = fgetc($fileIndex);
    		$donnees = $donneesNew.$car; //nouveau mot à comparer
     
    	}
    }
    fclose($fileIndex); 
    ?>
    </body>
    </html>
    Merci de votre eclairement

  2. #2
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    www.XXX.fr
    Whou le site Porno !! euh ... ton oki


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $tonsite = file_get_contents("http://www.XXX.fr/index.php");
     
    preg_match_all('#anniversaire#', $tonsite, $resultat);
     
    print_r($resultat);
    voila sinon ca devrait te faire ce que tu veux.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    j'ai lu un tuto sur les regex cet aprem midi en plus !

    Mais theoriquement ce que j'ai fait ca devrait marcher ?

    Allé je vais essayer de regexé !

    thx maxoo !

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Ca marche ! Nickel !

    thx !

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    J'ai parlé un peu trop vite..

    En fait j'aurais voulu traiter la source du fichier à partir du mot anniversaire.

    Par exemple enregistrer des infos après le mot "anniversaires"

    des idées ?

  6. #6
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    et tu regardes le résultat.

    tu as besoin de quoi exactemenet, y a combien de fois anniv dans le texte ??
    enfin voila.

  7. #7
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Et pour ce qu'il y a avant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #(.*)anniversaire(.*)#si
    Pour récupérer le contenu, les variables sont $1 et $2, ou ça dépend si tu fournis une variable à preg_match() qui retourne un tableau de valeurs... enfin je dis ça ta surement lu un tuto

Discussions similaires

  1. comparaison de chaines qui ne fonctionne pas
    Par Matth_S dans le forum Développement Web avec .NET
    Réponses: 2
    Dernier message: 03/02/2011, 12h02
  2. Réponses: 2
    Dernier message: 23/10/2007, 17h33
  3. Iptables configuration qui ne marche pas....
    Par The_Nail dans le forum Sécurité
    Réponses: 7
    Dernier message: 03/02/2004, 14h27
  4. Réponses: 3
    Dernier message: 08/09/2003, 15h06
  5. Réponses: 9
    Dernier message: 07/05/2003, 12h57

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