IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

ASP Discussion :

Mon if imbriqué ne fonctionne pas.


Sujet :

ASP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut Mon if imbriqué ne fonctionne pas.
    Bonjour tout le monde,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if EmailExistante = "" then
    	response.Write("Aucune adresse n'est enregistrée pour ce matricule")
     
    elseif Inscrit = "Non"  then then
    	response.Write("Les identifiants ont été envoyés à cette adresse mail : " & Destinataire)
     
    else
    response.Redirect("www.developpez.com")
    end if
    Il va toujours sur le else sans passer sur le premier if et sur le elseif.

    Destinataire une variable qui contient la valeur d'un champ access, si ce champ est vide, il devrait s'arrêter au premier if.

    Si Inscrit vaut Non ET que Destinataire est différent de rien, alors on fait un simple response.write.

    autrement, on va vers le site de developpez.com (pour les tests hein ).

    Merci d'avance pour votre précieuse aide.

    beegees

  2. #2
    Membre éclairé Avatar de jamesleouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 522
    Par défaut
    Est ce que t'as au moin essayer de faire response.write des valeurs que essaie de comparer?

  3. #3
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Citation Envoyé par jamesleouf Voir le message
    Est ce que t'as au moin essayer de faire response.write des valeurs que essaie de comparer?
    Salut,

    Merci pour ta réponse.

    J'ai fais des response.write, ils ne donnent rien :

    Inscrit : NonDestinataire : <-- vide
    Les identifiants ont été envoyés à cette adresse mail : <-- vide

    Erreur d'exécution Microsoft VBScript erreur '800a000d'

    Type incompatible: 'To'

    /RN/Forms/Etape1.asp, ligne 55
    En plus de ça, j'ai du code qui envoie un email à l'utilisateur mais vue qu'il n'a pas d'email, ça plante sur la ligne 55.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myMail.To= Destinataire
    Ce qui est normal.

    mais il passe quand même dans le else if :

    elseif Inscrit = "Non" then
    response.Write("Les identifiants ont été envoyés à cette adresse mail : " & Destinataire)
    Donc, le problème vient d'ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if Destinataire = "" then
    Merci encore.

    beegees

  4. #4
    Membre éclairé Avatar de copin
    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2005
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 231
    Par défaut
    Salut,

    Sauf erreur de ma part je dirai que le "elseif" s'écrit séparé donc "else if"

    Le "then then" sur la même ligne me semble étrange... met un seul "then"

    Ensuite tu as deux "if" mais un seul "end if" bref en manques 1.

    Bref si me trompe pas...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if EmailExistante = "" then
    	response.Write("Aucune adresse n'est enregistrée pour ce matricule")
     
    else if Inscrit = "Non"  then 
    	response.Write("Les identifiants ont été envoyés à cette adresse mail : " & Destinataire)
           end if 
     
    else response.Redirect("www.developpez.com")
    end if

  5. #5
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Citation Envoyé par copin Voir le message
    Salut,

    Sauf erreur de ma part je dirai que le "elseif" s'écrit séparé donc "else if"

    Le "then then" sur la même ligne me semble étrange... mais un seul "then"

    Ensuite tu as deux "if" mais un seul "end if" bref en manques 1.

    Bref si me trompe pas...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    if EmailExistante = "" then
    	response.Write("Aucune adresse n'est enregistrée pour ce matricule")
     
    else if Inscrit = "Non"  then 
    	response.Write("Les identifiants ont été envoyés à cette adresse mail : " & Destinataire)
    end if 
     
    else
    response.Redirect("www.developpez.com")
    end if
    Salut,

    Merci pour ta réponse.

    Je ne vois pas deux fois else sur la même ligne.

    Si je mets else if (donc séparés) il me dit end attendu.

    Merci encore

    beegees

  6. #6
    Membre éclairé Avatar de copin
    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2005
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 231
    Par défaut
    Blop,

    Citation Envoyé par beegees Voir le message
    Je ne vois pas deux fois else sur la même ligne.
    J'ai pas dis deux fois "else" mais deux fois "then" cf ton premier post...
    elseif Inscrit = "Non" then then
    Me suis peut etre planté sur la position du second "end if" met le à la fin... T'aura le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    if EmailExistante = "" then
    	response.Write("Aucune adresse n'est enregistrée pour ce matricule")
     
    else if Inscrit = "Non"  then 
    	response.Write("Les identifiants ont été envoyés à cette adresse mail : " & Destinataire)
     
    else
    response.Redirect("www.developpez.com")
    end if
    end if
    Je fais ça sans tester, y peut y avoir des erreurs...

  7. #7
    Membre Expert
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Par défaut
    Bonjour,

    Tu veux essayer ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    .....
    if Len(Trim(EmailExistante)) = 0 then
    .....

  8. #8
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Citation Envoyé par pc75 Voir le message
    Bonjour,

    Tu veux essayer ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    .....
    if Len(Trim(EmailExistante)) = 0 then
    .....
    Bonjour PC75,

    Merci beaucoup pour ton aide.

    Malheureusement ça ne fonctionne pas.

    Dans le champ email il n'y a rien, il devrait donc mettre cette phrase :

    Aucune adresse n'est enregistrée pour ce matricule

    Mais j'obtiens ceci :

    Inscrit : Non
    Destinataire : (rien)
    Les identifiants ont été envoyés à cette adresse email.

    je ne comprends pas.

    Edit :

    J'ai essayé ceci aussi mais sans succès :

    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
     
    if Destinataire = "RIEN" then
    	response.Write("Aucune adresse n'est enregistrée pour ce matricule")
    	end if
     
    select case Inscrit
     
    case "Non"
    	mysql = ""
    	mysql = "update [annee] set Inscrit = '" & dateauj & "' where [matricule] = '" & MatriculeEmail & "' "
    	cnn.Execute (mysql)
    	response.Write("Les identifiants ont été envoyés à cette adresse mail : " & Destinataire)
     
    case else
    	response.Redirect("www.developpez.com")
    end select
    Merci encore.

    beegees

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

Discussions similaires

  1. mon premier code ne fonctionne pas.
    Par argon dans le forum Langage
    Réponses: 1
    Dernier message: 22/06/2007, 22h06
  2. Mon "NOT NULL" ne fonctionne pas ?!
    Par Armagnak dans le forum Langage SQL
    Réponses: 3
    Dernier message: 01/06/2007, 16h03
  3. mon len("variable") ne fonctionne pas
    Par beegees dans le forum ASP
    Réponses: 15
    Dernier message: 19/10/2006, 11h23
  4. Mon beau bouton ne fonctionne pas
    Par Dounne dans le forum Flash
    Réponses: 5
    Dernier message: 06/09/2006, 14h19
  5. Réponses: 2
    Dernier message: 13/05/2006, 00h01

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