PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#26 03-12-2009 15:01:26

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

bonjour,

toujours un probleme "argument foreach... j'ai beau retourner le probleme , je ne vois pas pourquoi,

je n'arrive pas a le faire fonctionner ton code, je l'ai mis ici :

if(get_magic_quotes_gpc()) {

                  $_POST = array_map('stripslashes', $_POST);

                  $_GET = array_map('stripslashes', $_GET);

                  $_COOKIE = array_map('stripslashes', $_COOKIE);

                  }
            echo"<pre>";
 
            print_r($mon_array);
   
            echo"</pre>";

            $rapport = trim($_POST['rapport']);

            $tableau = explode("et",$rapport_ligne);

      $outil = trim($tableau[1]);

            var_dump($lignes);

            foreach($lignes as $ligne);
            {

       
         $sql= 'SELECT v.outil, m.outil
   
         FROM changelog AS v
 
         INNER JOIN outil AS m ON v.outil = m.id
 
         WHERE  v.outil = "outil"'
;

et j'ai essayé aussi en dessous du foreach

merci

Hors ligne

#27 03-12-2009 16:46:55

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Moteur de recherches multiligne, sos

Il est normal que cela ne fonctionne pas puisque $mon_array était le nom de variable que j'avais pris pour un exemple.
A toi de mettre tes variables. smile

Hors ligne

#28 03-12-2009 17:21:11

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

voila ce que c'est de foncer tête baissée roll

voici ce que ca donne, en effet , il n'y a aucun decoupage apparemment sad

qu'en penses tu ?

NULL

Array
(
    [rapport] => Logfile of Trend Micro HijackThis v2.0.2
Scan saved at 17:47:54, on 02/12/2009
Platform: Windows XP SP3 (WinNT 5.01.2600)
MSIE: Internet Explorer v8.00 (8.00.6001.18702)
Boot mode: Normal

Running processes:
C:\WINDOWS\System32\smss.exe
C:\WINDOWS\system32\winlogon.exe
...
...
...

R0 - HKCU\Software\Microsoft\Internet Explorer\Main,Start Page = http://search.mywebsearch.com/mywebsear ... tBqortmpvw
...
...
...

--
End of file - 10675 bytes

)

aucun résultat

Dernière modification par debutant (03-12-2009 18:54:20)

Hors ligne

#29 04-12-2009 14:59:18

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Moteur de recherches multiligne, sos

La question est qu'est ce que tu veux extraire de ce texte ?
Car je me rend compte que je n'ai pas compris ce que tu voulais récupérer (il n'y a aucun "et" dans tout ce baratin).

Hors ligne

#30 04-12-2009 17:02:31

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

En fait, c'est compliqué désolé, et c'est peut être pour ca que tout le monde bloque un peu roll, c'est la raison pour laquelle j'avais utilisé l'exemple de marc et sa clio tongue

Chaque ligne du rapport en exemple plus haut dans le sujet (Comme celui ci) doit être étudié une par une .

Ensuite dans une ligne, la partie présente dans ma BDD peut être a différents endroits, exemple en gras :

R3 - URLSearchHook: (no name) - {0579B4B6-0293-4d73-B02D-5EBB0BA0F0A2} - C:\Program Files\AskSBar\SrchAstt\1.bin\A2SRCHAS.DLL
R3 - URLSearchHook: (no name) - {9CB65206-89C4-402c-BA80-02D8C59F9B1D} - C:\Program Files\AskTBar\SrchAstt\1.bin\A5SRCHAS.DLL

O2 - BHO: Ask Toolbar BHO - {F0D4B231-DA4B-4daf-81E4-DFEE4931A4AA} - C:\Program Files\AskSBar\bar\1.bin\ASKSBAR.DLL
O2 - BHO: Ask Toolbar BHO - {FE063DB1-4EC0-403e-8DD8-394C54984B2C} - C:\Program Files\AskTBar\bar\1.bin\ASKTBAR.DLL

O9 - Extra button: Titan Poker - {49783ED4-258D-4f9f-BE11-137C18D3E543} - C:\Poker\Titan Poker\casino.exe

...

En fait toutes les parties en gras sont dans ma BDD, c'est donc la que je souhaiterais afficher la ligne avec un X ou n'importe quoi d'autre...

j'essaie d'etre le plus clair possible , pour te donner une idée, voici un site qui faisait la meme chose mais plus a jour, tu peux coller le rapport que j'ai mis en exemple, tu verras le resultat, ce sera plus parlant.

merci encore pour ton aide wink

Edit : je vais essayer de me pencher la dessus, qu'en pensez vous :
http://fr.php.net/manual/fr/function.wordwrap.php

Dernière modification par debutant (04-12-2009 18:54:01)

Hors ligne

#31 05-12-2009 14:23:41

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Moteur de recherches multiligne, sos

Oui je vois, donc déjà il te faudrait ligne par ligne.

$lignes = explode("\n",$rapport);

Cette fonction te renvoie-t-elle quelque chose de correct ? A savoir un array avec chaque ligne ?

Ensuite il faudra récupérer les mots que tu recherches mais là j'avoue que vu qu'ils sont à différents endroits...

Vu le nombre de possibilités je me demande si cela ne serait pas mieux de lire toute la base de donnée et de rechercher dans chaque ligne les résultats de la requête. Enfin à voir, je suis pas vraiment très frais actuellement... Passé la nuit sur un projet et j'ai trop peu dormi.

Hors ligne

#32 05-12-2009 15:01:36

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

salut,

ca fonctionne :

array(101) { [0]=>  string(41) "Logfile of Trend Micro HijackThis v2.0.2 " [1]=>  string(38) "Scan saved at 13:36:04, on 2009-11-29 " [2]=>  string(43) "Platform: Windows XP SP3 (WinNT 5.01.2600) " [3]=>  string(48) "MSIE: Internet Explorer v8.00 (8.00.6001.18702) " [4]=>  string(18) "Boot mode: Normal " [5]=>  string(1) " " [6]=>  string(19) "Running processes: " [7]=>  string(29) "C:\WINDOWS\System32\smss.exe " [8]=>  string(33) "C:\WINDOWS\system32\winlogon.exe " [9]=>  string(33) "C:\WINDOWS\system32\services.exe " [10]=>  string(30) "C:\WINDOWS\system32\lsass.exe " ...

[code source] array(101) {
  [0]=>
  string(41) "Logfile of Trend Micro HijackThis v2.0.2
"
  [1]=>
  string(38) "Scan saved at 13:36:04, on 2009-11-29
"
  [2]=>
  string(43) "Platform: Windows XP SP3 (WinNT 5.01.2600)
"
  [3]=>
  string(48) "MSIE: Internet Explorer v8.00 (8.00.6001.18702)
"
  [4]=>
  string(18) "Boot mode: Normal
"
  [5]=>
  string(1) "
"
  [6]=>
  string(19) "Running processes:
"
  [7]=>
  string(29) "C:\WINDOWS\System32\smss.exe
"
  [8]=>
  string(33) "C:\WINDOWS\system32\winlogon.exe
...
[/code]

je me demande si cela ne serait pas mieux de lire toute la base de donnée et de rechercher dans chaque ligne les résultats de la requête.

je ne savais pas qu'on pouvait le faire dans ce sens la , mais on aurait pas le même probleme ?

Enfin à voir, je suis pas vraiment très frais actuellement... Passé la nuit sur un projet et j'ai trop peu dormi.

c'est deja tres sympa de m'aider, je vais pas jouer les impatients... en attendant, je vais essayer d'en apprendre un peu plus

merci, bon week, et bon courage pour ton projet

Hors ligne

#33 09-12-2009 15:29:03

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

Bonjour

plus personne n'a d'idée ? sad

bonne journee

Hors ligne

#34 09-12-2009 16:18:01

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Moteur de recherches multiligne, sos

Bah selon moi il faudrait faire une recherche des termes pour chaque ligne mais ça parait hyper lourd vu le nombre de terme possible et le nombre de ligne... (donc les expressions régulières par exemple)
On se boufferai à 95% de chance un time out...

Dernière modification par xTG (09-12-2009 16:18:24)

Hors ligne

#35 11-12-2009 18:09:41

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

j'aimerais bien essayé quand même si tu me veux bien continuer a me filer un petit coup de main, c'est vrai que sur le site que je te donnais en exemple, le temps de réponse est assez long, mais le principe doit être sensiblement le même.

Par la suite , j'aurais le code complet, ce qui me permettra de bosser sur le fait de découper les lignes pour chercher dans la partie qui m'interesse de cette ligne , dans chaque catégorie de ligne, les parties seront toujours les mêmes, pour reprendre l'exemple des lignes ci dessus :

R3 - URLSearchHook: (no name) - {0579B4B6-0293-4d73-B02D-5EBB0BA0F0A2} - C:\Program Files\AskSBar\SrchAstt\1.bin\A2SRCHAS.DLL
R3 - URLSearchHook: (no name) - {9CB65206-89C4-402c-BA80-02D8C59F9B1D} - C:\Program Files\AskTBar\SrchAstt\1.bin\A5SRCHAS.DLL

O2 - BHO: Ask Toolbar BHO - {F0D4B231-DA4B-4daf-81E4-DFEE4931A4AA} - C:\Program Files\AskSBar\bar\1.bin\ASKSBAR.DLL
O2 - BHO: Ask Toolbar BHO - {FE063DB1-4EC0-403e-8DD8-394C54984B2C} - C:\Program Files\AskTBar\bar\1.bin\ASKTBAR.DLL

O9 - Extra button: Titan Poker - {49783ED4-258D-4f9f-BE11-137C18D3E543} - C:\Poker\Titan Poker\casino.exe

raison pour laquelle j'avais pensé a Worldwrap mais qui va être difficile a mettre en place car toutes les catégories de lignes ne sont pas les mêmes !

bon week-end

Hors ligne

#36 12-12-2009 15:25:23

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Moteur de recherches multiligne, sos

Bon bah pour la méthode auquel je pensais cela se divise en deux parties :

- Une boucle for sur les lignes récupérées
- pour chaque ligne une boucle de recherche avec preg_match pour chaque enregistrement de ta base de donnée (stocké dans un array bien évidemment, on va pas faire une requête à chaque fois)

Ensuite pour diviser le temps de traitement il serait bon de supprimer de l'array chaque terme que l'on a déjà trouvé.

Hors ligne

#37 18-12-2009 16:00:55

debutant
Membre
Inscription : 29-11-2009
Messages : 19

Re : Moteur de recherches multiligne, sos

bonjour,

j'ai essayé de bosser sur for et preg match mais je ne comprends rien, j'ai relu les tutos sur for mais tout ce que je trouve comme exemple c'est pour incrémenter ou décrementer , ce qui n'est  pas mon cas sad

passez de bonnes fêtes

Hors ligne

#38 19-12-2009 11:06:19

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Moteur de recherches multiligne, sos

foreach
Cette fonction devrait t'aider. ^^

Hors ligne

Pied de page des forums