Bonjour tout le monde!
Pour un projet d'étude, je dois faire une sorte de parser avec les regex.
Je possède un fichier en local, et quand je lance mon parser.php sa marche, mais dès qu'il est sur le net, problème...
Voici le code de mon parser :
J'envoie l'url grace à un formulaire, en POST
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?php $pattern = '#\<font size="1">\r\n(.*)#'; preg_match_all($pattern, implode("", file($_POST['url'])), $result, PREG_PATTERN_ORDER); print_r($result); echo 'Numéro : #'.$result[1][0].'<br >'; echo 'Nom : '.$result[1][1].'<br >'; echo 'Region : '.$result[1][2].'<br >'; echo 'Langues : '.$result[1][3].'<br >'; echo 'Equipe : '.$result[1][4].'<br >'; echo 'Taille : '.$result[1][5].'<br >'; echo 'Nom F : '.$result[1][7].'<br >'; echo 'Nom V : '.$result[1][6].'<br >'; ?>
Sur mon PC, quand je le lance, j'obtiens :
Alors que si le fichier est sur le net :Numéro : 089
Nom : Doe
Region : Picardie
Langues : FR
Equipe : FiRe
Taille : 1m65
Nom F : MisterX
Nom V : John
J'ai pensé à l'encodage, ou alors le fichier est mal lu, mais quand je fait un echo $subjects; sa m'affiche bien la page web, donc pas de problème de ce point de vue... le fichier est le même que sur le PC... Je comprend pas mon erreur, alors je fait appel à vousArray ( [0] => Array ( ) [1] => Array ( ) )
Notice: Undefined offset: 0 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 6
Numéro : #
Notice: Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 7
Nom :
Notice: Undefined offset: 2 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 8
Region :
Notice: Undefined offset: 3 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 9
Langues :
Notice: Undefined offset: 4 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 10
Equipe :
Notice: Undefined offset: 5 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 11
Taille :
Notice: Undefined offset: 7 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 12
Nom F :
Notice: Undefined offset: 6 in C:\Program Files\EasyPHP 2.0b1\www\parse.php on line 13
Nom V :
Merci d'avance pour votre aide,
Mathieu
Partager