Avis sur vos Programmes

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Avis sur vos Programmes

Message par Parole De JOJO »

Un code pour envoyer des avis sur le programme

un boutton dans la fenetre de votre programme le lancera, et les avis des utilisateurs s'affichent, ainsi qu'une possibilite d'envoyer un avis

j'aimerais entendre votre "avis"....

p.s. j'ai ouvert un site pour l'exemple, veuillez ne pas l'utiliser pour d'autres fins que ce programme, et ne rien y deposer a part a travers le programme. je compte sur votre comprehension

Code : Tout sélectionner

Declare OpenWindow_Window_0()
Declare.s GetMyIP()
Declare Get_Avis(a)
Declare sendfiles(asd.s)
Declare.s send()

Enumeration
  #Window_0
  #Button_SendMessage
  #Text_Name
  #Text_eMail
  #String_Name
  #String_Mail
  #Editor_Message
  #Editor_OldMessage
  #Button_Close
  #Button_Reload
  #Text_Title
  #Frame3D
  #Text_Opinion
EndEnumeration

; Config
Global host.s="purebasic.site11.com"
Global username.s="a7468621"
Global pass.s="jojo123"
Global DistantFolder.s="public_html/avisnew"
Global DistantFile.s="tg.tg"
Global URLdistantfile$="http://purebasic.site11.com/avisnew/tg.tg"
Global localfolder.s=GetEnvironmentVariable("temp")+"\avis\"
Global localfile.s=localfolder+"tg.tg"
Global localfile2.s=localfolder+"tg2.tg"
Global Separator.s="$"

CreateDirectory(localfolder)
InitNetwork()
OpenWindow_Window_0()
CreateThread(@Get_Avis(),154)

Repeat
  Select WaitWindowEvent()
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #Button_SendMessage:send()
        Case #Button_Close:quit=1
        Case #Button_Reload:Get_Avis(154)
      EndSelect
    Case #PB_Event_CloseWindow:quit=1
  EndSelect
Until quit=1
DeleteDirectory(localfolder,"")
End


Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 386, 36, 303, 405, "Avis sur le programme", #PB_Window_ScreenCentered| #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar)
    ButtonGadget(#Button_SendMessage, 85, 150, 95, 20, "Send Opinion")
    TextGadget(#Text_Name, 65, 40, 30, 15, "Nom :")
    TextGadget(#Text_eMail, 65, 60, 32, 15, "eMail :")
    StringGadget(#String_Name, 100, 35, 100, 20, "")
    StringGadget(#String_Mail, 100, 60, 100, 20, "")
    EditorGadget(#Editor_Message, 50, 100, 180, 47)
    EditorGadget(#Editor_OldMessage, 5, 190, 290, 185, #PB_Editor_ReadOnly)
    ButtonGadget(#Button_Close, 185, 380, 70, 20, "Close")
    ButtonGadget(#Button_Reload, 10, 380, 90, 20, "Reload Opinions")
    TextGadget(#Text_Title, 65, 5, 160, 20, "Opinions on the program")
    Frame3DGadget(#Frame3D, 45, 30, 190, 145, "Gadget_10", #PB_Frame3D_Double)
    TextGadget(#Text_Opinion, 110, 85, 44, 15, "Opinion :")
    SetGadgetFont(#Text_Title, LoadFont(1, "Minion Pro Cond", 12, #PB_Font_Bold|#PB_Font_HighQuality))
  EndIf
EndProcedure

Procedure.s GetMyIP()
  MyIP.s = StringField(GetHTTPHeader("http://www.anotherprophecy.com/system/scripts/getip.php"),2, Chr(34))
  ProcedureReturn MyIP
EndProcedure

Procedure Get_Avis(a)
  ReceiveHTTPFile(URLdistantfile$,localfile)
  If OpenFile(0,localfile)
    ClearGadgetItems(#Editor_OldMessage)
    Repeat
      aw.s=ReadString(0)
      nom.s=ReplaceString(StringField(aw,1,Separator),"_"," ")
      date.s=StringField(aw,2,Separator)
      heure.s=StringField(aw,3,Separator)
      AddGadgetItem(#Editor_OldMessage,-1,nom+" le "+date+" a "+heure)
      For k=6 To CountString(aw,Separator)+1
        AddGadgetItem(#Editor_OldMessage,-1,StringField(aw,k,Separator))
      Next
      AddGadgetItem(#Editor_OldMessage,-1,"")
    Until Eof(0)
  EndIf
EndProcedure

Procedure sendfiles(asd.s)
  If OpenFTP(0,host,username,pass)
    If SetFTPDirectory(0,DistantFolder)
      If ReceiveFTPFile(0,DistantFile,localfile2)
        If OpenFile(2,localfile2)
          FileSeek(2,Lof(2))
          WriteStringN(2,Mid(asd,1,Len(asd)-2))
          CloseFile(2)
          If SendFTPFile(0,localfile2,DistantFile)
            MessageRequester("Envoi d'avis","Avis envoye")
          Else
            MessageRequester("Opinions","Can't connect to server"+Chr(10)+"Please check your Internet connection and try again")
          EndIf
        Else
          MessageRequester("Opinions","Can't connect to server"+Chr(10)+"Please check your Internet connection and try again")
        EndIf
      Else
        MessageRequester("Opinions","Can't connect to server"+Chr(10)+"Please check your Internet connection and try again")
      EndIf
    Else
      MessageRequester("Opinions","Can't connect to server"+Chr(10)+"Please check your Internet connection and try again")
    EndIf
    CloseFTP(0)
  Else
    MessageRequester("Opinions","Can't connect to server"+Chr(10)+"Please check your Internet connection and try again")
  EndIf
EndProcedure

Procedure.s send()
  NewOpinion.s=GetGadgetText(#String_Name)+Separator
  NewOpinion+FormatDate("%dd/%mm/%yyyy", Date())+Separator
  NewOpinion+FormatDate("%hh:%ii:%ss", Date())+Separator
  NewOpinion+GetGadgetText(#String_Mail)+Separator
  NewOpinion+GetMyIP()+Separator
  Debug CountGadgetItems(#Editor_Message)
  For k=0 To CountGadgetItems(#Editor_Message)
    NewOpinion+GetGadgetItemText(#Editor_Message,k)+Separator
  Next
  sendfiles(NewOpinion)
EndProcedure
EDIT code edite, voir message ci dessous
Dernière modification par Parole De JOJO le ven. 04/févr./2011 10:36, modifié 4 fois.
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: Avis sur vos Programmes

Message par jbernard13 »

j'ai un message d'erreur (" declare" ne correspond pas à la déclaration de la procedure ) :
Procedure.s GetMyIP()
Jbernard13
Avatar de l’utilisateur
GallyHC
Messages : 1708
Inscription : lun. 17/déc./2007 12:44

Re: Avis sur vos Programmes

Message par GallyHC »

Bonjour,

Il faut juste modifier la ligne avec "Declare GetMyIP()" en mettant a la place "Declare.s GetMyIP()".

Cordialement,
GallyHC
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: Avis sur vos Programmes

Message par Parole De JOJO »

effectivement, c'est repare
a part ca?
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Avis sur vos Programmes

Message par Backup »

je n'ai pas d'avis sur ce prg :) ( puisque tu me le demande )

il semble remplir son office :)

que dire de plus ? :)
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: Avis sur vos Programmes

Message par Parole De JOJO »

Merci, c'est tout ce que je voulais savoir
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Re: Avis sur vos Programmes

Message par Le Soldat Inconnu »

planter 1 fois puis fonctionner 2 fois :wink:
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: Avis sur vos Programmes

Message par Parole De JOJO »

j'ai pas compris
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Re: Avis sur vos Programmes

Message par Le Soldat Inconnu »

au premier essais, le programme est resté bloqué (j'ai du faire ctrl atl suppr, j'avais pas lancé avec le debugguer)
Ensuite, il a fonctionner.
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: Avis sur vos Programmes

Message par Parole De JOJO »

bizarre
maintenant j'ai change le fonctionnement et tout se trouve dans un fichier
je posterais le code un peut plus tard
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: Avis sur vos Programmes

Message par Parole De JOJO »

J'ai change le code ci dessus, maintenant le programme est beaucoup plus rapide
reste le danger que deux personnes postent un avis en meme temps mais je ne pense pas que c'est probable
a part ca ce serait sympa de coder le mot de passe, mais je me suis perdu dans la bibliotek cipher
Répondre