Log -> PHP -> Mysql | Coment faire ? [Résolu] - PHP - Programmation
Marsh Posté le 11-04-2005 à 11:31:33
euh lol oui merci
EDIT: C'est mieux comme ca ^^ ? lol
Marsh Posté le 11-04-2005 à 11:34:58
ReplyMarsh Posté le 11-04-2005 à 11:40:40
oui, ça devrait aller.
t'as plus qu'a lire le fichier et faire un preg_match_all
Marsh Posté le 11-04-2005 à 11:43:08
soju a écrit : oui, ça devrait aller. |
J'ai essayer preg_match_all sans résultat
Ca marchai pas !! Mais surement mal paramétrer !!
int preg_match_all ( string pattern, string subject, array matches [, int flags [, int offset]])
Violà mon code:
Code :
|
Marsh Posté le 11-04-2005 à 11:44:36
faut que tu revois ta façon de lire un fichier,
fopen renvois une ressource, pas le contenu du fichier
Marsh Posté le 11-04-2005 à 11:47:27
Ouai c'est la fonction file() qui fais ca non ??
Mais elle me retourne sous un tableau et pour preg_match_all il faut un string
Donc me suis orienter vers autre chose avec un fopen et je me suis dit ke je pourrai recherché dans le fichier directement !!!
Mais de toute evidence ca ne marche pas :S
Quelqu'un pour me donner une voix ?? je veux pas la soluce je veu just qu'on m'éclaire !
Marsh Posté le 11-04-2005 à 11:48:30
le plus simple :
http://fr.php.net/manual/fr/functi [...] ntents.php
Marsh Posté le 11-04-2005 à 11:50:50
Je crois avoir lu quelquepart qu'il y avait une taille très limite pour cette fonction ...
hors mon fichier texte est assez long !!
Ca passera tu pense ??
Je test en même temps
Marsh Posté le 11-04-2005 à 11:58:40
Voila mon nouveau code mais ca ne marche pas il me donne cette erreure:
Warning: preg_match_all() [function.preg-match-all]: Unknown modifier '{' in ...
Code :
|
Marsh Posté le 11-04-2005 à 12:00:48
preg_match_all('§[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}§', $chaine, $result);
Marsh Posté le 11-04-2005 à 12:04:07
Il ne me dit plus d'erreure effectivement ... mais ça sort d'où ca ???
Merci
Suite à tous ça, ma variable chaine contient bien tout le fichier texte !!
Par contre après le preg_match_all je n'ai rien dans le tableau $result
a part en $result[0] --> Array
Marsh Posté le 11-04-2005 à 12:15:16
print_r($result);
Marsh Posté le 11-04-2005 à 12:21:22
Marsh Posté le 11-04-2005 à 13:47:23
met nous un exemple de quelques lignes de ton fichier log
Marsh Posté le 11-04-2005 à 15:03:37
voila un bout de mon fichier log:
10.xxx.xx.xxx |
Marsh Posté le 11-04-2005 à 15:06:09
Peut-tu m'expliquer l'interêt de mettre ça dans un spoiler ?
Marsh Posté le 11-04-2005 à 15:10:30
Euh désolé mais ce n'est pas dans un spoiler non ?
J'ai test spoiler pour voir ce que c'était ... (d'ailleurs j'ai pas compris l'interêt mais ce n est pas le sujet)
Marsh Posté le 11-04-2005 à 15:20:58
'[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
Voilà ma chaîne d'expression régulière ^^
preg_match_all('[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}', $chaine, $result) |
Mais j'obtiens cette erreur quand je la met dans la fonction preg_match_all
Warning: preg_match_all() [function.preg-match-all]: Unknown modifier '{' in /opt/lampp/htdocs/stage/index.php on line 20
Marsh Posté le 11-04-2005 à 15:21:59
Roh oui c'est bon je me suis gouré de bouton ... dsl c'est corrigé
Marsh Posté le 11-04-2005 à 15:31:23
CocoRambo a écrit :
|
il manque les délimiteurs de masque
Marsh Posté le 11-04-2005 à 15:34:26
ca va ca ??
'/\[0-9\]\{1,3\}\.\[0-9\]\{1,3\}\.\[0-9\]\{1,3\}\.\[0-9\]\{1,3\}/' |
Marsh Posté le 11-04-2005 à 15:35:59
ReplyMarsh Posté le 11-04-2005 à 15:38:01
Déjà je te remercie pour ta patience a faire partager ton savoir avec les autres (en l'occurence pour cette fois --> moi)
Et là c mieux ?
/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/ |
Marsh Posté le 11-04-2005 à 15:43:14
soju tu sais quoi ??
Je t'aime lol
Ca marche merci beaucoup mon gars !!
Tu es super sympa !
Marsh Posté le 11-04-2005 à 15:48:39
CocoRambo a écrit : Je t'aime lol |
si ton amour est convertible en euros j'en veux bien,
sinon si tu es blonde à forte poitrine aussi,
Marsh Posté le 11-04-2005 à 15:54:04
Il est vrai que vu comment tu m a aider tu mériterai que je me fasse teindre en blond et que je fasse de la chérurgie mamère
Tu m'en ve pas si je le fais pas ? lol
Encore merci mec !
Marsh Posté le 12-04-2005 à 10:38:20
Soju un autre problème se présente à moi
J'arrive pas à récupérer les port (cf l'extrait de mon log plus haut)
En fait je voudrai les recup en fonction de l IP
Donc j'ai test un truc du genre
'/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} [0-9]{2,4}/' |
Mais marche pas
Tu veux pas être encore patient stp ? lol
Marsh Posté le 12-04-2005 à 11:08:33
CocoRambo a écrit : Mais marche pas |
normal, c'est pas un espace entre ip et port, c'est un retour à la ligne
Marsh Posté le 12-04-2005 à 11:11:34
ouai mais pourtant une fois que j'ai fais file_get_contents il enleve les retour à la lgine non ??
Marsh Posté le 12-04-2005 à 11:21:04
CocoRambo a écrit : ouai mais pourtant une fois que j'ai fais file_get_contents il enleve les retour à la lgine non ?? |
heu pourquoi ?? http://fr.php.net/file_get_contents
Marsh Posté le 12-04-2005 à 11:26:55
ah ba non tu a raison !!
Mais pourtant quand je fais un echo "file_get_contents(...)";
Il m affiche tout sans retour a la ligne !!
Enfin ...
Comment capturer qu'une partie de mon expression régulière ??
Marsh Posté le 11-04-2005 à 11:29:13
Bonjour all !!
Je pensais trouvé des topics à ce sujet mais après avoir fais mes recherches ---> Rien !!
Peut être, même surement pas les bons mots clés !
Donc je poste
Voila j'aimerai récupérer toutes les IP contenu dans un fichier txt parmis du texte
Pour l'expression régulière ca va ça ??
[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}
Ensutie j'ai pensé a un fopen mais après je sais plus quoi faire
J'explique plus complètement le sujet comme ça vous pourrez peut être me donner une autre solution !!
En fait je scanne un réseau entier avec Nmap
Ensuite j'obtiens un fichier log avec des IPs
A partir de ce fichier log j'aimerai remplir une Bdd sous mysql !!
Merci d'avance !
Lien utile:
http://www.asp-php.net/tutorial/as [...] 2&resum=no
Message édité par CocoRambo le 12-04-2005 à 11:41:09