Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2018
    Messages : 14
    Points : 7
    Points
    7

    Par défaut Comment réutiliser la valeur saisie dans une Richtextbox ?

    Bonjour,
    quelqu'un aurait-il l'amabilité de me dire comment remplacer automatiquement "123456.txt" par la valeur saisie dans une richtextbox ?
    Mon code fonctionne uniquement si je saisie dans la richtextbox "123456".

    J'aimerai que si dans la richtextbox j'ecris par exemple "developpez" le code cherche un fichier developpez.txt et execute le code si cela fonctionne.

    Code permettant la saisie dans la richtextbox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub validpass_Click()
    Dim textcode As String
    Dim packet As String, CD As String, p As String ', i As Long
     
    CD = Len(MOTDEPASSE.textcode.Text)
    p = Trim$(MOTDEPASSE.textcode.Text)
     
    textcode = p = CD
     
    packet = "validationmotdepasse" & SEP_CHAR & textcode & SEP_CHAR & END_CHAR
            Call SendData(packet)
     
    Unload Me
    End Sub

    Code permettant le controle de la richtextbox (celui à modifier) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
           Case "validationmotdepasse"
     
            'verifie existance d'un fichier XXXX.txt dans accounts/codes
             If FileExist("accounts\codes\123456.txt") Then                     'valeur à automatiser
     
             'copie le fichier
            Call FileCopy(App.Path & "\accounts\codes\123456.txt", App.Path & "\accounts\vip\" & GetPlayerLogin(index) & ".txt")    'valeur à automatiser
     
             'efface le fichier
             Call Kill("accounts\codes\123456.txt")   'valeur à automatiser
     
             Call Msgbull(index, "Le code saisie est correct !")
             Call JouerSFX(index, "valid.wav")
     
            Else
     
            Call Msgbull(index, "Le code saisie n'est pas valide !")
             Call JouerSFX(index, "erreur.wav")
     
            End If
            Exit Sub

    Merci pour l'aide que vous saurez m'apporter

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2018
    Messages : 14
    Points : 7
    Points
    7

    Par défaut

    Navré de relancer le sujet, mais je ne trouve pas la solution

  3. #3
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 625
    Points : 10 193
    Points
    10 193

    Par défaut

    Salut

    MOTDEPASSE.textcode.Text, s'est quoi, MOTDEPASSE => le Form ?, textcode => le richtextbox ?
    Que contient CD ? (exemple de valeur)
    Que contient P ? (exemple de valeur)
    Que contient ta variable packet (exemple de valeur) juste avant ta ligne de commande Call SendData(packet),
    Dans ton 2éme code, quel est cette sub, qui l'appelle ?, quelle événement ?, peux tu nous mettre celle-ci en entier, pour comprendre il nous faut le Select ???? , nous mettre un seul case ne nous est d'aucune utilité si on n'a pas le contexte.
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2018
    Messages : 14
    Points : 7
    Points
    7

    Par défaut

    Salut ProgElecT, et merci une nouvelle fois pour ton aide

    dans mon projet client ==> MOTDEPASSE.frm
    j'ai une richtextbox nommé : "textcode"

    L'idée est que lorsque on clique dans le label "validpass" présent dans la même form execute le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub validpass_Click()
    Dim textcode As String
    Dim packet As String, CD As String, p As String ', i As Long
     
    CD = Len(MOTDEPASSE.textcode.Text)
    p = Trim$(MOTDEPASSE.textcode.Text)
     
    textcode = p = CD
     
    packet = "passcode" & SEP_CHAR & textcode & SEP_CHAR & END_CHAR
            Call SendData(packet)
     
    Unload Me
     
    End Sub
    il envoi le texte saisie dans la richtextbox au serveur et vérifie si le texte saisie dedans la richtextbox correspond à un fichier .txt du même nom coté serveur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     Case "passcode"
     
            'verifie existance d'un fichier XXXX.txt dans accounts/codes
             If FileExist("accounts\codes\123456.txt") Then
     
             'copie le fichier
            Call FileCopy(App.Path & "\accounts\codes\123456.txt", App.Path & "\accounts\vip\" & GetPlayerLogin(index) & ".txt")
     
             'efface le fichier
             Call Kill("accounts\codes\123456.txt")
     
             Call Msgbull(index, "Le code saisie est correct !")
             Call JouerSFX(index, "valid.wav")
     
            Else
     
            Call Msgbull(index, "Le code saisie n'est pas valide !")
             Call JouerSFX(index, "erreur.wav")
     
            End If
            Exit Sub
    Dans l'état actuel le code permet uniquement de vérifie qu'une variable fixe à savoir ici dans l'exemple la présence d'un fichier 123456.txt
    je souhaite que 123456.txt devienne une variable aléatoire de sorte à ce que si dans la richtextbox du client je tape par exemple : "ProgElecT"

    le serveur analyse ma demande et vérifie si un fichier : "ProgElecT.txt" existe

    si je tape ensuite "skysool" ==> il vérifier si un "skysool.txt" existe.

    - - - - - - - - - - - - - - - - - -

    Que contient CD ? (exemple de valeur) ==> contient la valeur saisie dans la richtextbox
    Que contient P ? (exemple de valeur) ==> contient la valeur saisie dans la richtextbox
    Que contient ta variable packet ==> Il envoi au serveur le texte saisie dans la richtextbox
    quel est cette sub, qui l'appelle ?, quelle événement ? ==> Je ne sais pas répondre à cette question :-(, mais j'ai essayé de résumé du mieux que j'ai pu l'idée à savoir que c'est packet = "validationmotdepasse" coté client qui envoi au serveur l'information saisie dans la richtextbox et le serveur analyse en recevant avec la fonction Case "passcode" ce que j'ai décrit plus haut.

    J'espère avoir était le plus complet possible

  5. #5
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 625
    Points : 10 193
    Points
    10 193

    Par défaut

    Salut


    Le richtextbox contient ProgElecT
    Je me répète,
    que contient exactement ta variable CD
    que contient exactement ta variable P
    que contient exactement ta variable packet juste avant ta ligne de commande Call SendData(packet), pour le voir mettre un Debug.Print et ouvrir la fenêtre Exécution (Touche Ctrl + G)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    packet = "passcode" & SEP_CHAR & textcode & SEP_CHAR & END_CHAR
            Debug.Print "textcode = " & textcode
            Debug.Print "CD = " & CD
            Debug.Print "P = " & P
            Debug.Print "packet = " & packet
            Call SendData(packet)
    de cette façon tu peux nous mettre le copier/coller


    mets nous l’entièreté de la sub qui contient ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Case "passcode"
     
            'verifie existance d'un fichier XXXX.txt dans accounts/codes
             If FileExist("accounts\codes\123456.txt") Then
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2018
    Messages : 14
    Points : 7
    Points
    7

    Par défaut

    Bonsoir,
    navré pour la réponse tardive j'étais au boulot,

    donc j'ai suivi tes instructions et voila ce que j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    textcode = False
    CD = 9 'nombre de caractère saisis
    P = 123456789 'mot de passe saisie dans la richtextbox
    packet = passcode False í


    Concernant l'entiereté de la sub :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
     
    Sub HandleData(ByVal index As Long, ByVal Data As String)
    Dim packet As String
    Dim textcode As String
     
    Case "passcode"
     
            'verifie existance d'un fichier XXXX.txt dans accounts/codes
             If FileExist("accounts\codes\123456.txt") Then
     
             'copie le fichier
            Call FileCopy(App.Path & "\accounts\codes\123456.txt", App.Path & "\accounts\vip\" & GetPlayerLogin(index) & ".txt")
     
             'efface le fichier
             Call Kill("accounts\codes\123456.txt")
     
             Call Msgbull(index, "Le code saisie est correct !")
             Call JouerSFX(index, "valid.wav")
     
            Else
     
            Call Msgbull(index, "Le code saisie n'est pas valide !")
             Call JouerSFX(index, "erreur.wav")
     
            End If
            Exit Sub

  7. #7
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 625
    Points : 10 193
    Points
    10 193

    Par défaut

    Salut du soir


    Au tout début du code du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Option Explicit
    Dim FichierMotDePasse as string
    Dans ton code Private Sub validpass_Click(),
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    p = Trim$(MOTDEPASSE.textcode.Text)
    FichierMotDePasse = P & ".txt"
    Dans la sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub HandleData(ByVal index As Long, ByVal Data As String)
            Select Case Data '<====== Là je suppose que , car tu n'as pas donné l’entièreté de cette sub ===========>
            Case "passcode"
     
                    'verifie existance d'un fichier XXXX.txt dans accounts/codes
                     'If FileExist("accounts\codes\123456.txt") Then ' <==== ICI DOIT ETRE FAIT LA MODIFIDCATION  ===>
                    If FileExist("accounts\codes\" & FichierMotDePasse) Then
    ' ....... 
    End Sub
    LA condition, Private Sub validpass_Click() et Sub HandleData(ByVal index As Long, ByVal Data As String) doivent être sur le même formulaire.
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  8. #8
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 625
    Points : 10 193
    Points
    10 193

    Par défaut

    Arf...

    J'ai oublié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
             'efface le fichier
             Call Kill("accounts\codes\" & FichierMotDePasse)
    dans la sub HandleData(ByVal index As Long, ByVal Data As String)
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2018
    Messages : 14
    Points : 7
    Points
    7

    Par défaut

    Salut du soir,

    alors j'ai appliqué ce que tu m'as dit mais "Option Explicit" génere une erreur au lancement,
    du coup je t'ai carrément tout copier mes modifications, y verrais-tu une erreur ?
    on va bien finir par y arriver...


    Voici mes modifications coté client :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Private Sub validpass_Click()
    Dim textcode As String
    Dim packet As String, CD As String, p As String ', i As Long
    Dim FichierMotDePasse As String
     
    p = Trim$(MOTDEPASSE.textcode.Text)
    FichierMotDePasse = p & ".txt"
     
    CD = Len(MOTDEPASSE.textcode.Text)
    p = Trim$(MOTDEPASSE.textcode.Text)
     
    textcode = p = CD
     
    packet = "passcode" & SEP_CHAR & textcode & SEP_CHAR & END_CHAR
            Call SendData(packet)
     
    Unload Me
    End Sub

    Voici l'entiereté de la sub (j'ai voulu t'épargner tout ca mais on a plus le choix) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
     
     
     Case "passcode"
     
            'verifie existance d'un fichier XXXX.txt dans accounts/codes
             If FileExist("accounts\codes\" & FichierMotDePasse) Then
     
             'copie le fichier
            Call FileCopy(App.Path & "\accounts\codes\" & FichierMotDePasse, App.Path & "\accounts\vip\" & GetPlayerLogin(index) & ".txt")
     
             'efface le fichier
             Call Kill("accounts\codes\" & FichierMotDePasse)
     
             Call Msgbull(index, "Le code saisie est correct !")
             Call JouerSFX(index, "valid.wav")
     
            Else
     
            Call Msgbull(index, "Le code saisie n'est pas valide !")
             Call JouerSFX(index, "erreur.wav")
     
            End If
            Exit Sub
    Je te remercie une nouvelle énième fois

  10. #10
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 625
    Points : 10 193
    Points
    10 193

    Par défaut

    Re

    Laisses tomber les propositions de mes 2 derniers messages.

    Il y a une erreur dans textcode = p = CD car packet = passcode False í n'est pas logique

    je pense que textcode = p tout simplement
    Ce qui donnerai en admettant que MOTDEPASSE.textcode.Text = "MonMotDePasse" donc textcode = p donc p = MonMotDePasse donc la variable textcode = MonMotDePasse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            packet = "passcode" & SEP_CHAR & textcode & SEP_CHAR & END_CHAR
            'donc packet = "passcode MonMotDePasse  "
            Call SendData(packet)
    Ce qui permet dans la sub HandleData(ByVal index As Long, ByVal Data As String) d'avoir à partir de la ligne 1037
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
             Case "passcode"
             Dim NomFichier
              NomFichier = Parse(1) & ".txt"       
            'verifie existance d'un fichier XXXX.txt dans accounts/codes
             If FileExist("accounts\codes\" & NomFichier) Then
     
             'copie le fichier
            Call FileCopy(App.Path & "\accounts\codes\" & NomFichier, App.Path & "\accounts\vip\" & GetPlayerLogin(index) & ".txt")
     
             'efface le fichier
             Call Kill("accounts\codes\" & NomFichier)
     
             Call Msgbull(index, "Le code saisie est correct !")
             Call JouerSFX(index, "valid.wav")
     
            Else
     
             Call Msgbull(index, "Le code saisie n'est pas valide !")
             Call JouerSFX(index, "erreur.wav")
     
            End If
            Exit Sub
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2018
    Messages : 14
    Points : 7
    Points
    7

    Par défaut

    ProgElecT... tu es un génie !

    Tu as résolu mon problème !

    la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    textcode = p
     
    packet = "passcode" & SEP_CHAR & textcode & SEP_CHAR & END_CHAR
            Call SendData(packet)
    Coté serveur tu avais tout bon !

    MERCI INFINIMENT, mon projet est maintenant terminé à 100% niveau code et je ne t'embeterai plus
    Merci pour ton investissement sur le forum et d'aider les gens qui en ont besoin.
    Tu es au top !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Système] Fonction eval mal codée
    Par Dsphinx dans le forum Fonctions
    Réponses: 20
    Dernier message: 08/02/2007, 08h28
  2. [Mail] Système de vérification d'inscription par e-mail
    Par franck.thibault dans le forum Fonctions
    Réponses: 14
    Dernier message: 12/01/2007, 22h25
  3. [Système] Execution d'un code
    Par yatoo dans le forum Fonctions
    Réponses: 9
    Dernier message: 05/11/2006, 21h33
  4. [C#] Vérification de code.
    Par Pilloutou dans le forum C#
    Réponses: 4
    Dernier message: 31/10/2006, 00h09
  5. Réponses: 7
    Dernier message: 30/03/2006, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo