...........
Re: index.php_detector
Merci pour ton code Dobro,
je n'ai pas encore tester car je n'en ai pas l'utilité mais ce code peut être intéressant. Je le garde sous le coude merci.
@++
je n'ai pas encore tester car je n'en ai pas l'utilité mais ce code peut être intéressant. Je le garde sous le coude merci.
@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: index.php_detector
a la base ce code permet de lister le repertoire du FTP pour y trouver un fichier précis
puis d'envoyer un fichier du disque dur local vers le FTP
rien n'empêche de le modifier un petit peu pour par exemple
inclure dans vos programme un verificateur de bonne version...
exemple dans un programme qui s'apelerio "toto.exe"
une procedure qui va donc verifier la presence sur le FTP d'un fichier "toto_version_xxxx.txt"
ou le xxx serai le numero de la version en cours du prg toto.exe
celui_ci déterminerai alors s'il est a jour ou pas ....
et s'il ne l'est pas , d'affficher un message requester qui signale a l'utilisateur
qu'une version plus recente est resente sur le site en telechargement
certains ici on deja fait ce genre de chose (Ar-s,Gnozal,etc ...)
dans ce petit exemple on a quasi tout ce qu'il nous faut pour effectuer ce genre de chose
plus besoin de la partie timer
plus besoin de la partie upload de fichier
un truc dans le genre :
[REEDIT]
Attention , n'utilisez pas ce code tel quel pour vos applications
en effet le mot de pass et votre login apparaissent en clair dans votre prg
utilisez , la librairie Cipher pour coder votre mot de pass
mais le mieux reste de lire le fichier textxxxx.txt qui se trouve sur votre espace
en passant par le web gadget et non pas par le protocole FTP comme indiqué ici
[/REEDIT]
puis d'envoyer un fichier du disque dur local vers le FTP
rien n'empêche de le modifier un petit peu pour par exemple
inclure dans vos programme un verificateur de bonne version...

exemple dans un programme qui s'apelerio "toto.exe"
une procedure qui va donc verifier la presence sur le FTP d'un fichier "toto_version_xxxx.txt"
ou le xxx serai le numero de la version en cours du prg toto.exe
celui_ci déterminerai alors s'il est a jour ou pas ....
et s'il ne l'est pas , d'affficher un message requester qui signale a l'utilisateur
qu'une version plus recente est resente sur le site en telechargement
certains ici on deja fait ce genre de chose (Ar-s,Gnozal,etc ...)

dans ce petit exemple on a quasi tout ce qu'il nous faut pour effectuer ce genre de chose

plus besoin de la partie timer

plus besoin de la partie upload de fichier

un truc dans le genre :
[REEDIT]
Attention , n'utilisez pas ce code tel quel pour vos applications
en effet le mot de pass et votre login apparaissent en clair dans votre prg
utilisez , la librairie Cipher pour coder votre mot de pass
mais le mieux reste de lire le fichier textxxxx.txt qui se trouve sur votre espace
en passant par le web gadget et non pas par le protocole FTP comme indiqué ici

[/REEDIT]
initnetwork ()
Procedure test_file_version()
Enumeration
#Ftp
EndEnumeration
; attention le pass et le login sont an clair dans le prg, il faut les coder
; ou ne pas passer par FTP mais par http:
site$= "ftpperso.free.fr"
login$= "******"
pass$= "*****"
; by Dobro
If openftp (0, site$, login$, pass$) ; ouvre le ftp
If examineftpdirectory ( #Ftp ) ; regarde chaque fichier
While nextftpdirectoryentry ( #Ftp ) ; tant qu'on a pas tou vu
Debug ftpdirectoryentryname ( #Ftp ) ; affiche le contenu de l'arbo
If ftpdirectoryentryname ( #Ftp )= "toto_123.txt" ; si le fichier "toto_123.txt" est present
; ici on compare le xxx a la version actuel du prg, et si inferieur
messagerequester ( "information" , "une version plus recente du prg est présente sur le site" ) ; on previens le gus !
EndIf
Wend
EndIf
Else
Debug "Can't connect to ftp.free.fr"
EndIf
closeftp ( #Ftp )
EndProcedure
test_file_version()
Re: index.php_detector
Je suis en train de refaire un peu le code pour utiliser les timers PB, j'arrive pas à dormir 

Re: index.php_detector
@Dobro oui c'est vrai cela peut aussi servir pour voir les versions pas bête. Ont lie un fichier texte et si le chiffre est plus grand un messagerequester s'ouvre avec un lien
Mais la lib etna ne fait pas cela ? Mais bon comme ça sa évite d'utiliser une lib externe
@gansta93 oublie pas de dormir quand même un peut
ton corp lui a un timer

@++



@gansta93 oublie pas de dormir quand même un peut



@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: index.php_detector
@venom
voila !
ps je viens d'editer mon code a ce propos dans mon dernier message
allez bonne nuit les enfants
(enfin pour ceux qui peuvent dormir !!
)

voila !

ps je viens d'editer mon code a ce propos dans mon dernier message

allez bonne nuit les enfants


ça m'evitera bien de le faire comme çagansta93 a écrit :Je suis en train de refaire un peu le code pour utiliser les timers PB, j'arrive pas à dormir

Re: index.php_detector
Ma méthode diffère un peu dans le sens ou je lis un fichier .txt comportant le numéro de la dernière version.
L'avantage étant que pour lire le contenu du txt, y'a pas besoin de mettre son mot de passe ftp dans son exe.
Question sécurité ça craint un peu je trouve.
L'avantage étant que pour lire le contenu du txt, y'a pas besoin de mettre son mot de passe ftp dans son exe.
Question sécurité ça craint un peu je trouve.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: index.php_detector
ah oui c'est vrai sa Ar-S, je ne l'avais même pas vu dans ce sens là
@++

@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: index.php_detector
Dans ce cas-là il y a la solution du fichier de préférences.Ar-S a écrit :Ma méthode diffère un peu dans le sens ou je lis un fichier .txt comportant le numéro de la dernière version.
L'avantage étant que pour lire le contenu du txt, y'a pas besoin de mettre son mot de passe ftp dans son exe.
Question sécurité ça craint un peu je trouve.
Ca n'est pas dans le code que voici, mais au moins, il est maintenant portable.

Code : Tout sélectionner
Declare test_file_index(site$, login$, pass$, index$) ; procedure qui regarde si la taille de index.php a changé
; attention le pass et le login sont an clair dans le prg, il faut les coder
; ou ne pas passer par FTP mais par http:
site$= "ftpperso.free.fr" ; mettre ici votre adresse de FTP (ici c'est pour Free.fr)
login$= "*********" ; mettre ici votre login
pass$= "*******" ; mettre ici votre pass FTP
index$= "Z:\index.php" ; mon index.php se trouve ici sur mon disque dur
If Not InitNetwork ()
MessageRequester("Alerte", "Problème réseau !!!")
End
EndIf
Enumeration
#Ftp
#Window
#Timer
EndEnumeration
OpenWindow ( #Window ,100,100,1,1, "test index" , #PB_Window_SystemMenu )
AddWindowTimer(#Window, #Timer, 60000) ; envoie un evenement toutes les minutes
Repeat
Evenement= WaitWindowEvent ()
If Evenement = #PB_Event_Timer And EventTimer() = #Timer
test_file_index(site$, login$, pass$, index$)
EndIf
Until Evenement = #PB_Event_CloseWindow
End
Procedure test_file_index(site$, login$, pass$, index$)
; by Dobro
trouve = #False ; Pour en suite vérifier si le fichier a bien été trouvé
If FileSize(index$) > 0 ; Par sécurité, histoire de ne pas supprimer bêtement index.php comme je l'ai fais ^^
If OpenFTP (0, site$, login$, pass$)
If ExamineFTPDirectory ( #Ftp )
While NextFTPDirectoryEntry ( #Ftp )
If FTPDirectoryEntryName ( #Ftp )= "index.php"
trouve = #True
; taille=FTPDirectoryEntrySize(#Ftp) ; a faire 1 fois pour connaitre la taille de index.php
; Debug "la taille de index.php est de :"+ Str(taille)
If FTPDirectoryEntrySize ( #Ftp )<>FileSize(index$)
Beep_ (330,100)
Beep_ (440,100)
Beep_ (220,100)
MessageRequester ( "Alerte" , "le fichier index a été touché !! " )
DeleteFTPFile ( #Ftp , "index.php" )
If SendFTPFile ( #Ftp , index$ , "index.php" ) <>0 ; envoi le fichier index.php d'origine
MessageRequester ( "Alerte" , "le fichier index a été corrigé !! " )
Else
MessageRequester ( "Alerte" , "probleme pas pu envoyer le fichier !! " )
EndIf
Else
; MessageRequester("Alerte","tout va bien!! ")
Debug "OK"
EndIf
Break ; pas besoin d'aller plus loins
EndIf
Wend
If trouve = #False
Beep_ (330,100)
Beep_ (440,100)
Beep_ (220,100)
MessageRequester ( "Alerte" , "le fichier index a été supprimé !! " )
If SendFTPFile ( #Ftp , index$ , "index.php" ) <>0 ; envoi le fichier index.php d'origine
MessageRequester ( "Alerte" , "le fichier index a été envoyé !! " )
Else
MessageRequester ( "Alerte" , "probleme pas pu envoyer le fichier et celui-ci a été supprimé !! " )
EndIf
EndIf
Else
Debug "Erreur liste répertoire"
EndIf
Else
Debug "Can't connect to ftp.free.fr"
EndIf
If IsFTP(#Ftp) ; Au moins on est sûr
CloseFTP ( #Ftp )
EndIf
Else
MessageRequester("Alerte", "Le fichier " + index$ + " est introuvable !")
EndIf
EndProcedure
J'ai ajouté quelques vérifications comme l'existence du fichier original, si le fichier index.php n'a pas été supprimé comme ça on l'envoi à nouveau, dès que index.php est trouvé on arrête la boucle qui liste le répertoire... j'en oubli peut-être mais bon en tout cas ça marche ^^.
Re: index.php_detector
Merci Dobro pour l'explication! J'avais la tête un peu dans les nuages de pas avoir pensé à Google lorsque j'ai écris ça apparemment!
Ce que je trouve étrange, c'est que il y a un grand nombre de site de PureBasic de piraté on dirait. C'est comme si il y avait un membre du forum qui s'amusait à faire pomper les membres.
Et pour ton version.php, ça ne doit être que de la vantardise de la part du trou du'c...! Du genre "Ouais! Man! Regarde ce que je t'ai pomper! Rhognogno!".

Ce que je trouve étrange, c'est que il y a un grand nombre de site de PureBasic de piraté on dirait. C'est comme si il y avait un membre du forum qui s'amusait à faire pomper les membres.
Et pour ton version.php, ça ne doit être que de la vantardise de la part du trou du'c...! Du genre "Ouais! Man! Regarde ce que je t'ai pomper! Rhognogno!".
Re: index.php_detector
j'avais tout de suite mis à jour en 0.7.22, il a donc du être écrasé, merci DobroDobro a écrit :a la racine !
moi je l'avais !
et c'etait un veritable tableau de bord !!
en plus d'une animation boucle du logo du hacker de gauche a droite
les menus permettais d'acceder a pleins d'infos
a commencer par l'arborescence complete du site
password, parametre de la base de données etc ....
pour trouver ce fichier corrompu
j'ai testé un par un tout les fichier *.php
se trouvant a la racine du site
avec mozilla tu te met sur l'adresse de ton site , puis tu remplace le "News.php"
par le nom des autres php de la racine....
si tu tombe sur ce que je viens de te dire
(peut etre chez toi un autre fichier que "version.php")
ben efface le vite
pour ma part ça devrai etre bon maintenant
n'oublie pas de te mettre a jour avec la versionVersion 0.7.22

Re: index.php_detector
oui ! tu as parfaitement raison !!Ar-S a écrit :Ma méthode diffère un peu dans le sens ou je lis un fichier .txt comportant le numéro de la dernière version.
L'avantage étant que pour lire le contenu du txt, y'a pas besoin de mettre son mot de passe ftp dans son exe.
Question sécurité ça craint un peu je trouve.

le mieux est de passer par le "webgadget" pour lire le fichier txt
comme ceci par exemple :
ce prg lit un fichier txt ("sph.txt")
et affiche sont contenu dans un editeur
;/ Author : Pille
; Proxy like this : "192.168.0.1:8080"
Global Site.s= "http://michel.dobro.free.fr/bidouilles/SPH.txt"
;Global Site.s="http://michel.dobro.free.fr/index.htm"
; toute la page web est dans "Url2Text(#Site)
; toute la page web est dans "Url2Text(#Site)
; toute la page web est dans "Url2Text(#Site)
; toute la page web est dans "Url2Text(#Site)
; toute la page web est dans "Url2Text(#Site)
ProcedureDLL.s Url2Text2(Url.s, OpenType.b,ProxyAndPort.s)
; 1 INTERNET_OPEN_TYPE_DIRECT Resolves all host names locally.
; 0 INTERNET_OPEN_TYPE_PRECONFIG Retrieves the proxy Or direct configuration from the registry.
; 4 INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY Retrieves the proxy Or direct configuration from the registry And prevents the use of a startup Microsoft JScript Or Internet Setup (INS) file.
; 3 INTERNET_OPEN_TYPE_PROXY Passes requests To the proxy unless a proxy bypass list is supplied And the name To be resolved bypasses the proxy. In this Case, the function uses INTERNET_OPEN_TYPE_DIRECT.
isLoop.b=1
INET_RELOAD.l = $80000000
hInet.l=0
hURL.l=0
Bytes.l=0
Buffer.s= space (2048 )
RES.s= ""
hInet = InternetOpen_ ( "" , OpenType, ProxyAndPort, "" , 0)
hURL = InternetOpenUrl_ (hInet, Url, #Null , 0, INET_RELOAD, 0)
Repeat
InternetReadFile_ (hURL,@Buffer, len (Buffer), @Bytes)
If Bytes = 0
isLoop=0
Else
RES = RES + left (Buffer, Bytes)
EndIf
Until isLoop=0
InternetCloseHandle_ (hURL)
InternetCloseHandle_ (hInet)
ProcedureReturn RES
EndProcedure
ProcedureDLL.s Url2Text(Url.s)
ProcedureReturn Url2Text2(Url,1, "" )
EndProcedure
;/ Test
openwindow (0,10,10,800,600, "resultat" , #PB_Window_SystemMenu )
CreateGadgetList ( windowid (0))
editorgadget (2, 10, 10, 800,580)
addgadgetitem (2, -1, Url2Text(Site.s))
Repeat
event= windowevent ()
Until event = #PB_Event_CloseWindow
pour cette raison , je viens d'editer mon message precedent en precisant ce fait

Merci

Re: index.php_detector
Il ne serait pas mieux de comparer les checksum md5 des fichiers plutot que leur taille?
Deux fichiers completement differents peuvent faire exactement la meme taille
Deux fichiers completement differents peuvent faire exactement la meme taille

Re: index.php_detector
Salut gansta93,
Je te déconseilles d'utiliser les _beep()
Préfère leur la lecture d'un petit fichiers son.
En effet, toutes les tours PC n'ont pas le bip de branchés.
Parfois le branchement sur la carte mère est trop éloigné du câble en façade contenant le petit haut parleur (même si ça devient de plus en plus rare).
Je te déconseilles d'utiliser les _beep()
Préfère leur la lecture d'un petit fichiers son.
En effet, toutes les tours PC n'ont pas le bip de branchés.
Parfois le branchement sur la carte mère est trop éloigné du câble en façade contenant le petit haut parleur (même si ça devient de plus en plus rare).
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: index.php_detector
Ar-S a écrit :Salut gansta93,
Je te déconseilles d'utiliser les _beep()
Préfère leur la lecture d'un petit fichiers son.
En effet, toutes les tours PC n'ont pas le bip de branchés.
Parfois le branchement sur la carte mère est trop éloigné du câble en façade contenant le petit haut parleur (même si ça devient de plus en plus rare).
ces beep_() viennent de mon code.. pas du siens

pas grave puisque le beep amène de toute façon un requester....
(a moins que gangsta93 ne les aient retirés .. je vais voir son code

Re: index.php_detector
Tu as raison... en fait dans ce cas-là le mieux est de ne rien lire dutout puisqu'un requester est affiché. Mais... j'aime bien les beep, ça m'rappel des moments où j'ai cassé les oreilles de toute une classe, ou des moments où d'autres ont fait tourner un prof d'info/bureautique en bourique ^^.Ar-S a écrit :Salut gansta93,
Je te déconseilles d'utiliser les _beep()
Préfère leur la lecture d'un petit fichiers son.
En effet, toutes les tours PC n'ont pas le bip de branchés.
Parfois le branchement sur la carte mère est trop éloigné du câble en façade contenant le petit haut parleur (même si ça devient de plus en plus rare).
Edit : Dobro m'a pris de vitesse
