Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1483 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Ptite question PHP // Facile pour les pros

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Ptite question PHP // Facile pour les pros

n°1266305
moi_antoin​e
Apple C'est Bon. Mangez-En.
Posté le 14-12-2005 à 13:38:11  profilanswer
 

Bonjour,
 
Je n'ai aucune notion de PhP mais j'essai de m'y mettre, et je voudrai savoir comment faire pour arriver a faire un truc de ce genre :
 
Si "Mondocument.htm" contient "lalalala"
       Alors j'affiche "OK"
 
Pour ouvrir "mondocument.htm" j'ai fait un fopen, en fait c'est surtout le "contient" que je n'arrive pas à trouver !
 
Merci !


Message édité par moi_antoine le 14-12-2005 à 13:41:28
mood
Publicité
Posté le 14-12-2005 à 13:38:11  profilanswer
 

n°1266308
cinocks
Posté le 14-12-2005 à 13:42:04  profilanswer
 

Code :
  1. if (strstr($variableavecledocument, 'contient')) {
  2. echo 'OK';
  3. }else {
  4. echo 'NOK';
  5. }


 
si je ne dis aps de connerie. Y'a sans doute moins consommateur que le preg_match.

Message cité 1 fois
Message édité par cinocks le 14-12-2005 à 13:44:49

---------------
MZP est de retour
n°1266309
Berceker U​nited
PSN : berceker_united
Posté le 14-12-2005 à 13:42:24  profilanswer
 

Il faut bien faire un fopen et recupérer le contenu du fichier. Apres tu peux utiliser la fonction strpos
http://www.nexen.net/docs/php/anno [...] tripos.php
 
il donnera la position. S'il y a pas il te retourne false , s'il trouve il te donne sa position.

n°1266310
moi_antoin​e
Apple C'est Bon. Mangez-En.
Posté le 14-12-2005 à 13:43:00  profilanswer
 

Il faut que je remplace 'contient' par quoi ici ?

n°1266311
Berceker U​nited
PSN : berceker_united
Posté le 14-12-2005 à 13:43:02  profilanswer
 

cinocks a écrit :

Code :
  1. if (preg_match('contient', $variableavecledocument)) {
  2. echo 'OK';
  3. }else {
  4. echo 'NOK';
  5. }


 
si je ne dis aps de connerie. Y'a sans doute moins consommateur que le preg_match.


harf je pense que c'est le plus simple ont va pas chipoter :D

n°1266313
moi_antoin​e
Apple C'est Bon. Mangez-En.
Posté le 14-12-2005 à 13:44:07  profilanswer
 

Berceker United a écrit :

harf je pense que c'est le plus simple ont va pas chipoter :D


 
J'ai un peu de mal a repéré par koi il faut que je remplace 'contient' ....

n°1266316
Berceker U​nited
PSN : berceker_united
Posté le 14-12-2005 à 13:45:33  profilanswer
 

moi_antoine a écrit :

Il faut que je remplace 'contient' par quoi ici ?


Code :
  1. $buffer = '';
  2. $fd = fopen ("ton_fichier", "r" );
  3. while (!feof ($fd)) {
  4.   $buffer. = fgets($fd, 4096);
  5. }
  6. if (preg_match('contient', $buffer)) {
  7.   echo 'OK';
  8. }else {
  9.   echo 'NOK';
  10. }
  11. fclose ($fd);

n°1266318
cinocks
Posté le 14-12-2005 à 13:46:36  profilanswer
 

bah par 'lalala'.  
 
j'ai remplacer le preg_match qui fonctionne avec les expressions regulieres par strstr qui est beaucoup light. Elle retourne si oui ou non la chaine est presente.
 
http://fr2.php.net/manual/fr/function.strstr.php


---------------
MZP est de retour
n°1266333
Berceker U​nited
PSN : berceker_united
Posté le 14-12-2005 à 14:00:22  profilanswer
 

Note :  Si vous voulez juste déterminer si un needle particulier se trouve dans la chaîne haystack, utilisez la fonction strpos() qui est plus rapide et qui consomme moins de ressources.

n°1266342
cinocks
Posté le 14-12-2005 à 14:08:41  profilanswer
 

arf, j'ai lu trop vite. strpos est plus adaptée.


---------------
MZP est de retour
mood
Publicité
Posté le 14-12-2005 à 14:08:41  profilanswer
 

n°1266346
moi_antoin​e
Apple C'est Bon. Mangez-En.
Posté le 14-12-2005 à 14:11:14  profilanswer
 

Berceker United a écrit :

Note :  Si vous voulez juste déterminer si un needle particulier se trouve dans la chaîne haystack, utilisez la fonction strpos() qui est plus rapide et qui consomme moins de ressources.


 
Merci!
 
Bon je viens d'essayer, mais j'y arrive pas. Voici mon code :

Code :
  1. <?php
  2. $open = fopen("$test", "r" );
  3. $test = "disques.htm";
  4.    if (strstr($test, 'disquedown.gif'))
  5.         {
  6.         echo 'OK';
  7.         }
  8.    else
  9.         {
  10.         echo 'PAS OK';
  11.         }
  12.  
  13.  
  14. fclose($open);
  15.  
  16. ?>

n°1266348
Xav_
The only one...
Posté le 14-12-2005 à 14:12:46  profilanswer
 

ben disons que si tu as mis dans cet ordre, c'est normal que ça déconne...
faut pitete rensengner $test AVANT de faire un fopen dessus...
 
EDIT:
et pis c'est pas suffisant le fopen, faut un truc genre "fgets" pour lire le contenu du fichier après l'avoir ouvert


Message édité par Xav_ le 14-12-2005 à 14:14:19

---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°1266350
cinocks
Posté le 14-12-2005 à 14:15:33  profilanswer
 

moi_antoine a écrit :

Merci!
 
Bon je viens d'essayer, mais j'y arrive pas. Voici mon code :

Code :
  1. <?php
  2. $open = fopen("$test", "r" );
  3. $test = "disques.htm";
  4.    if (strstr($test, 'disquedown.gif'))
  5.         {
  6.         echo 'OK';
  7.         }
  8.    else
  9.         {
  10.         echo 'PAS OK';
  11.         }
  12.  
  13.  
  14. fclose($open);
  15.  
  16. ?>



 
 
Ca ne veut pas dire grand chose ton bout de code.
 

Code :
  1. <?php
  2. $file = file_get_contents($chemin_acces);
  3.    if (strpos($file , 'disquedown.gif'))
  4.         {
  5.         echo 'OK';
  6.         }
  7.    else
  8.         {
  9.         echo 'PAS OK';
  10.         }
  11. unset($file);
  12.  
  13. ?>


---------------
MZP est de retour
n°1266352
cinocks
Posté le 14-12-2005 à 14:16:12  profilanswer
 

le fopen ouvre un pointeur sur un fichier, il faut ensuite le lire.


---------------
MZP est de retour
n°1266355
moi_antoin​e
Apple C'est Bon. Mangez-En.
Posté le 14-12-2005 à 14:20:46  profilanswer
 

cinocks a écrit :

Ca ne veut pas dire grand chose ton bout de code.
 

Code :
  1. <?php
  2. $file = file_get_contents($chemin_acces);
  3.    if (strpos($file , 'disquedown.gif'))
  4.         {
  5.         echo 'OK';
  6.         }
  7.    else
  8.         {
  9.         echo 'PAS OK';
  10.         }
  11. unset($file);
  12.  
  13. ?>



 
Ok avec ce code ca marche.
C'est bizarre le php, je suis habitué au C et c'est pas pareil DU TOU DU TOUT dans la logike du truc

n°1266362
cinocks
Posté le 14-12-2005 à 14:23:15  profilanswer
 

c'est la meme logique. pour un fopen, il faut fait des lecture ensuite.


---------------
MZP est de retour
n°1271288
moi_antoin​e
Apple C'est Bon. Mangez-En.
Posté le 21-12-2005 à 14:34:04  profilanswer
 

J'ai une autre question !!!!
 
 
Il faudrait que ma page en PHP scan une page HTML ( ca je sais le faire maintenant), et que tous les nombres dans cette page >99, il me les divise par 1024 et les affiche ensuite.
Je sais pas du tout coment faire.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Ptite question PHP // Facile pour les pros

 

Sujets relatifs
[C] question passage d'un tableau a plusieurs dim en parametreCode C question !
[PHP] Probleme droit écriture[PHP] enretgistrer une page PHP au format word ? HTML ?
Question sécurité session généraleSite PHP/Mysql
Question sur XML avec C++[PHP] comment coller un delai d'attente ?
[Php - regex] fonction ereg()[PHP] Formulaire qui se reremplit si erreur
Plus de sujets relatifs à : Ptite question PHP // Facile pour les pros


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR