Regex et array

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Regex et array

Re: Regex et array

par ghost5922 » 11 mai 2013, 20:39

Bonjour,

en effet bizar que vous avez pu avoir un résultat si cette option et désactiver il doit avoir un problème quelque part pour etre sur il suffi de mettre dans un fichier php

<?php phpinfos(); ?>

et de lire les options disponible

Re: Regex et array

par Gulliup » 11 mai 2013, 19:52

Bonjour,

http://mapage.html :shock:

c'est quoi cette URL ???

pas de nom de domaine ??

=> il faut déjà que tu puisses ouvrir ta page dans un navigateur, c'est la première vérif à faire.

C'était à titre d'exemple pour plus d'anonymat ;). Je me doute bien qu'il faut que je puisse l'ouvrir.
Je vais tester avec Curl, mais ce que je trouve étrange c'est que j'avais fait un test avec "$codesource= file_get_contents" ...... puis après un echo $codesource, et j'avais eu un copie exacte de la page (mise en forme etc...).

Re: Regex et array

par blof » 10 mai 2013, 20:31

Bonjour,

http://mapage.html :shock:

c'est quoi cette URL ???

pas de nom de domaine ??

=> il faut déjà que tu puisses ouvrir ta page dans un navigateur, c'est la première vérif à faire.

Re: Regex et array

par moogli » 10 mai 2013, 17:38

Si, si l'hébergeur l'autorise (paramètre allow url wrap open, de mémoire, ou équivalent ;) )

Tu peux essayer avec curl.

@+

Re: Regex et array

par Gulliup » 10 mai 2013, 17:33

Non malheureusement...

C'est impossible de récupérer par une fonction le code source d'une page lambda ?

Re: Regex et array

par moogli » 10 mai 2013, 17:24

Le fichier est sur ton site ?
Si oui vire le http et utilise un chemin local.

Le message est clair il ne peux ouvrir le flux réseau.

@+

Re: Regex et array

par Gulliup » 10 mai 2013, 17:01

Merci pour votre aide tout les deux ! Il semblerait que le problème du regex soit résolue, maintenant ça viendrait plus de là :
$codesource = file('http://mapage.html');
J'obtiens comme la dernière fois,
Warning: file(http://mapage.html) [function.file]: failed to open stream: Network is unreachable in /mnt/153/sdb/8/9/********** on line 39

Re: Regex et array

par ghost5922 » 10 mai 2013, 10:54

En effet je regarde toujours mes logs apaches :p

Sinon autant mettre aussi une condition avant de traiter
if(preg_match('#/wiki/[a-zA-Z0-9%_]#', $codesource,$tableau)){
  print_r($tableau);
}
else{
    echo'Aucun resultat';
}
Ou
if(preg_match_all('#/wiki/[a-zA-Z0-9%_]#', $codesource,$tableau)){
    print_r($tableau);
}
else{
    echo'Aucun resultat';
}

Re: Regex et array

par moogli » 10 mai 2013, 10:32

Sans les @ c'est une mauvaise façon de faire les erreurs doivent être traitée.
Au pire il est possible de n'a pas les afficher en production (display error off).

@+

Re: Regex et array

par ghost5922 » 10 mai 2013, 08:43

Bonjour,

pour un resultat
@preg_match('#/wiki/[a-zA-Z0-9%_]#', $codesource,$tableau);
pour plusieurs
@preg_match_all('#/wiki/[a-zA-Z0-9%_]#', $codesource,$tableau);

Re: Regex et array

par moogli » 10 mai 2013, 00:56

le deuxième argument de preg_grep doit être un tableau.

utilise la fonction file plutôt que file_get_content pour utiliser preg_grep.

sinon utilise preg_match_all

@+

Re: Regex et array

par Gulliup » 09 mai 2013, 23:29

Celle-ci :
Warning: preg_grep() [function.preg-grep]: Second argument to preg_grep() should be an array in .......


Merci de ton aide !

Re: Regex et array

par moogli » 09 mai 2013, 23:04

je n'ai fait que traduire les messages d'erreurs. si tu as ce message d'erreur je ne vois pas comment tu peux avoir un contenu vu qu'il n'arrive pas a ouvrir le flux (failed to open stream).

pour le preg_grep() qu'elle erreur ?

@+

Re: Regex et array

par Gulliup » 09 mai 2013, 22:55

Merci de ta réponse !

Pour le file_get_content pourtant si je met "echo $codesource", la page dont provient le code source s'affichera. Une idée d'une autre fonction ?

Ensuite pour le preg_grep, j'obtiens un message d'erreur après avoir mis ça :
	
$tableau = preg_grep ('#/wiki/[a-zA-Z0-9%_]#', $codesource));

Re: Regex et array

par moogli » 09 mai 2013, 17:45

salut,

tu n'a pas besoin du array autour de preg_regrep cette fonction retourne un tableau

ensuite a priori file_get_contents ne peux pas être utilisé sur un fichier distant (Network is unreachable)

essai un fichier local. si c'est un fichier local l'erreur est étrange.


@+