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 :

Incompréhension : problème d'un script ASP


Sujet :

ASP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 24
    Points : 10
    Points
    10
    Par défaut Incompréhension : problème d'un script ASP
    Bonjour,

    Je demande votre aide car après pas mal de recherche je ne sais plus quoi faire et je bloque sur ce problème.

    Je suis en train de faire migrer un "progiciel" (c'est à dire un site web entièrement personnalisable à l'aide d'interfaces...) d'un serveur à un autre.

    J'ai déjà résolu pas mal de mes problème mais la je suis confronté à l'erreur :

    error '80020009'
    /site1/site/activite/fiche_bien_modif.asp, line 62
    quand je veux créer une nouvelle page par l'interface (la page est bien crée mais j'arrive sur cette page d'erreur)


    Je suis complétement bloqué. Je vous met le code du fichier ci-dessous :


    <%
    if session("langue") = 1 then
    set Con = Server.CreateObject("ADODB.Connection")
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../clients/epa1971/outpost.mdb")
    set connstring = Server.CreateObject("ADODB.Recordset")

    elseif session("langue") = 2 then
    set Con = Server.CreateObject("ADODB.Connection")
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../clients/"&session("password")&"/outpost-langue2.mdb")
    set connstring = Server.CreateObject("ADODB.Recordset")


    elseif session("langue") = 3 then
    set Con = Server.CreateObject("ADODB.Connection")
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../clients/"&session("password")&"/outpost-langue3.mdb")
    set connstring = Server.CreateObject("ADODB.Recordset")

    elseif session("langue") = 4 then
    set Con = Server.CreateObject("ADODB.Connection")
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../clients/"&session("password")&"/outpost-langue4.mdb")
    set connstring = Server.CreateObject("ADODB.Recordset")

    elseif session("langue") = 5 then
    set Con = Server.CreateObject("ADODB.Connection")
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../clients/"&session("password")&"/outpost-langue5.mdb")
    set connstring = Server.CreateObject("ADODB.Recordset")


    end if

    %>
    <%
    response.buffer=true
    set rs5 = server.createobject("ADODB.Recordset")
    sql5 = "select * from bouton_lien"
    rs5.open sql5,con,2,3,1
    %>

    <%
    session("id")=request("id")
    id=session("id")
    login_intranet=session("login_intranet")

    SQL_INTRANET = "SELECT * FROM INTRANET WHERE login_intranet LIKE '" & login_intranet & "' "



    sql = "select * from biens where id like '"&id&"'"


    set rs = con.execute(SQL)
    set rs_INTRANET = con.execute(SQL_INTRANET)


    set rs1 = server.createobject("ADODB.Recordset")
    sql1 = "select * from test_maj"
    rs1.open sql1,con,2,3,1
    set rs1 = con.execute(SQL1)



    if rs("dossier")<> "non" then

    if rs_INTRANET.EOF then
    Response.Redirect "login_membre.htm"
    else
    end if


    if session("dossier_intranet") <> rs("dossier") then
    response.redirect"login_membre.htm"
    end if
    else
    end if
    a=rs("dossier")
    %>
    <html>
    <head>

    <%if rs5("lien_activite")="../activite/fiche_vierge.asp" then
    response.redirect"fiche_vierge.asp"
    end if%>
    <%if rs5("lien_activite")="../activite/fiche_bien2.asp" then
    response.redirect"fiche_bien2.asp"
    end if%>
    <%if rs5("lien_activite")="../activite/fiche_menu.asp" then
    response.redirect"../gd/fiche_menu_modif.asp"
    end if%>
    <%if rs5("lien_activite")="../activite/fiche_menu_deroulant.asp" then
    response.redirect"../gd/fiche_menu_deroulant_modif.asp"
    end if%>
    <% rs.close
    set rs = nothing

    rs1.close
    set rs1 = nothing

    rs5.close
    set rs5 = nothing

    con.close
    set con=nothing
    %>

    et l'erreur se situe dans cette ligne :
    if rs("dossier")<> "non" then

    Un grand merci d'avance à ceux qui s'attarderont sur mon problème.

    ++

  2. #2
    Membre régulier
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2004
    Messages : 97
    Points : 89
    Points
    89
    Par défaut
    Bonjour,

    - As-Tu vérifié qu'il y a qqch dans rs("dossier") (ça se pourrait que rs soit vide)?
    - De quel type est rs("dossier"): du texte ? un nombre ?


    Phil

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    Merci de te pencher sur mon problème.

    - J'ai vérifié qu' rs("dossier") ne soit pas vide est il ne l'est pas (il contient "vgt1924" qui correspond à un dossier du ftp).

    - rs("dossier") est un champ TEXTE

  4. #4
    Membre régulier
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2004
    Messages : 97
    Points : 89
    Points
    89
    Par défaut
    Je pense pas que je puisse t'aider plus alors je n'utilise pas couramment l'asp.
    Ce que je ferais : je mets en commentaire ce qui n'est pas nécessaire (les 4 lignes au dessus de la ligne 62 par ex) et je décommente au fur à mesure. Ca se peut que l'erreur se situe autre part que la ligne indiquée.

    En espérant que tu puisses résoudre ton problème, tiens moi au courrant ça m'intéresse de savoir ce qui n'allait pas, merci

    bonne soirée,
    P

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Salut,
    La variable dans laquelle tu stockes ta requeteest en minuscule et quand tu l'appellestu l'écrit en majuscule est-ce une erreur de frappe ?
    testes en uniformisant les noms.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 161
    Points : 128
    Points
    128
    Par défaut
    Vu que tu as beaucoup de recordset as tu verifier que "rs" contienne bien le champ dossier ?

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Philoulheinz : Merci pour ton aide

    Pymm : J'ai uniformisé les majuscules/minuscules et cela ne change rien...

    Mateache : Comment puis-je vérifier que le rs contienne bien le champ dossier ? (en fait je ne sais pas ce que signifie le rs en langage asp, car ce n'est pas une table mais je suppose l'abréviation de recordset non ?)

    Merci pour vos réponses qui me permettent d'avancer un peu quand même !

  8. #8
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Salut,

    Juste une petite remarque. L'utilisation de "LIKE" dans tes requetes SQL suppose que tu utilises aussi le signe "%". Il indique un "joker". Par exemple,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM MATABLE WHERE USERNAME LIKE A%
    te donnera tous les noms d'utilisateurs qui commencent par A.

    D'ailleurs, ton code ne comporte pas de boucle alors que ton recordset pourrait très bien se composer de plusieurs enregistrements.

    Sinon, fait fonctionner ton code pas à pas en ajoutant morceau par morceau. Utilise les response.write pour verifier la validité de tes requetes.

    A+

  9. #9
    Membre régulier
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2004
    Messages : 97
    Points : 89
    Points
    89
    Par défaut
    L'utilisation de "LIKE" dans tes requetes SQL suppose que tu utilises aussi le signe "%". Il indique un "joker".
    ou du "_". Si tu veux faire une comparaison complète :un "=" à la place du "LIKE" est suffisant mais dans ton cas, Rocket666, le problème ne vient pas de là.


    courage ! on a tous nos prises de tête mais on finit toujours par y arriver

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 161
    Points : 128
    Points
    128
    Par défaut
    Citation Envoyé par Rocket666
    Philoulheinz : Merci pour ton aide

    Pymm : J'ai uniformisé les majuscules/minuscules et cela ne change rien...

    Mateache : Comment puis-je vérifier que le rs contienne bien le champ dossier ? (en fait je ne sais pas ce que signifie le rs en langage asp, car ce n'est pas une table mais je suppose l'abréviation de recordset non ?)

    Merci pour vos réponses qui me permettent d'avancer un peu quand même !
    rs c'est bien le nom de ton recordset qui selectionne les champs de la table "biens". As tu vérifier que le champ dossier se trouvait bien dans la table "biens". Verifie aussi l'orthographe du champ ...

  11. #11
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Pour un peu plus de clarté, tu devrais remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <%if rs5("lien_activite")="../activite/fiche_vierge.asp" then
    response.redirect"fiche_vierge.asp"
    end if%>
    <%if rs5("lien_activite")="../activite/fiche_bien2.asp" then
    response.redirect"fiche_bien2.asp"
    end if%>
    <%if rs5("lien_activite")="../activite/fiche_menu.asp" then
    response.redirect"../gd/fiche_menu_modif.asp"
    end if%>
    <%if rs5("lien_activite")="../activite/fiche_menu_deroulant.asp" then
    response.redirect"../gd/fiche_menu_deroulant_modif.asp"
    end if%>
    Par un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT CASE rs5("lien_activite")
    A+

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Merci pour toutes ces réponses.
    Je vais faire des tests et je vous tiens au courant.
    Si jamais vous avez une idée n'hésitez pas !!

    Encore merci.

Discussions similaires

  1. Problème de charset avec un script ASP
    Par torobravo dans le forum ASP
    Réponses: 6
    Dernier message: 10/01/2008, 19h30
  2. Réponses: 4
    Dernier message: 27/04/2007, 12h21
  3. Réponses: 18
    Dernier message: 12/06/2006, 09h39
  4. problème avec un script de generation de nom de login
    Par black_code dans le forum Langage
    Réponses: 2
    Dernier message: 04/08/2005, 13h51
  5. Conflit entre javascript et script ASP
    Par Mvu dans le forum ASP
    Réponses: 2
    Dernier message: 22/02/2005, 16h28

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