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

JavaScript Discussion :

Impossible d'entrer dans la fonction


Sujet :

JavaScript

  1. #1
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut Impossible d'entrer dans la fonction
    Bonjour à tous,

    Est-ce que quelqu'un pourrait vérifier ou tester ce code pour moi car de mon côté, je n'arrive pas à entrer dans la fonction "ConnectToDB" lors du click sur le bouton !!

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <html>
    <head>
     
    <SCRIPT language="Javascript"> 
    function ConnectToDB(){
    alert ("entrée dans ConnectToDB");
    var rs;
    var conn;
    var comm
    var sql;
    var DBPath;
     
    DBPath= Server.MapPath(".")+"\DB\db1.mdb"
    rs = new ActiveXObject("ADODB.Recordset");
    comm = new ActiveXObject("ADODB.Command");
    conn = new ActiveXObject("ADODB.Connection");
     
    conn.open "driver={Microsoft Access driver (*.mdb)};dbq=" & DBPath
    Comm.ActiveConnection = conn
     
    sql = ("insert into Table1 (nom,prenom,adresse,cp) values(+document.formulaire.nom.value+,+document.formulaire.prenom.value+,+document.formulaire.adresse.value+,+document.formulaire.cp.value+)");
    comm.CommandText=sql
    Comm.Execute
     
    rs.Open (sql, conn);
     
    alert("It worked");
     
    conn.Close;
    rs.Close;
    }
    </SCRIPT>
     
    </head>
    <body bgcolor="#CCFFFF">
    <form name="formulaire" method= "post" onSubmit="ConnectToDB()" action="">
     <p><label>Nom : </label><input type="text" name="nom" size="15" /></p>
     <p><label>Prénom : </label><input type="text" name="prenom" size="15" /></p>
     <p><label>Adresse : </label><textarea name="adresse" cols="30" rows="4"></textarea></p>
     <p><label>Code postal : </label><input type="text" name="cp" size="7" maxlength="5" /></p>
    <p><input type="submit" name="btnEnregistrer" value="Enregistrer"/></p>
    </form>
     
    </body>
    </html>
    Merci d'avance
    [Il était une fois Delphi ....]


  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    conn.open("driver={Microsoft Access driver (*.mdb)};dbq=" & DBPath);
    permet de lancer la fonction.
    ... mais visiblement, y a pas que ça
    Mauvaise concaténation du sql, par ex.

    EDIT : appelée dans le onsubmit, ta fonction devrait retourner true (=> submit) ou false (=> pas submit)

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Salut E.bzz !

    Merci de ta réponse.

    Que veux-tu dire par là ?
    Mauvaise concaténation du sql, par ex.
    Et par là ?
    EDIT : appelée dans le onsubmit, ta fonction devrait retourner true (=> submit) ou false (=> pas submit)
    N'aurais-tu pas un exemple à me fournir ?

    Merci beaucoup
    [Il était une fois Delphi ....]


  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par zemeilleurofgreg Voir le message
    Que veux-tu dire par là ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql = ("insert into Table1 (nom,prenom,adresse,cp) values('"+document.formulaire.nom.value+"','"+document.formulaire.prenom.value+"','"+document.formulaire.adresse.value+"','"+document.formulaire.cp.value+"')");
    EDIT : et attention aux simples quotes pour entourrer les values de type caractères ....
    Et par là ?
    Cf. la description / le fonctionnement de l'évènement
    N'aurais-tu pas un exemple à me fournir ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="le_form" action="action.php" onsubmit="control();">
    Si control() renvoie true, action.php est appelée, sinon, le submit est annulé ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  5. #5
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Salut E.Bzz,

    merci beaucoup de tes réponses !!

    Dois-je ajouter quelque chose dans ma fonction ?

    Merci

    @+
    [Il était une fois Delphi ....]


  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par zemeilleurofgreg Voir le message
    Dois-je ajouter quelque chose dans ma fonction ?
    Ca dépend : ça fonctionne, maintenant ?

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  7. #7
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    action="action.php"
    je ne comprend pas pourquoi je dois appeler une autre page, car ma fonction se trouve sur la même page que mon formulaire !

    Tu as jeté un oeil à ma fonction ?

    J'avais au début fais ça en ASP, mais mon hébergeur (gratuit) n'accepte ni le PHP ni le ASP ni le Pearl !! Alors j'ai du me tourner vers le javascript.

    Et il ne rentre toujours pas dans ma fonction. Je comprend plus rien !!!

    Merci beaucoup pour ton aide.
    [Il était une fois Delphi ....]


  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par zemeilleurofgreg Voir le message
    je ne comprend pas pourquoi je dois appeler une autre page, car ma fonction se trouve sur la même page que mon formulaire !
    C'était juste un exemple
    Dans ton cas, c'est le formulaire qui n'est pas utile (puisque pas d'action, justement).
    Mais ça, c'est un détail

    Tu as jeté un oeil à ma fonction ?
    Oui, justement : tu es sûr de ne pas mélanger des instructions JS et ASP ??

    Tu n'as pas d'erreur de script ?
    Vérifie dans les préférence de ton nav' qu'elles sont bien activées ...


    ... et puis, je ne vois pas de tag <server> ?
    Ton script s'éxécutera donc sur le client.
    Chaque visiteur aura le .mdb sur son poste ?

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  9. #9
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Tu n'as pas d'erreur de script ?
    C'est bien ça le problème, il ne rentre pas dans la fonction !
    J'ai mis une "alert" au début de la fonction, mais .... rien
    Pourtant javascript est bien activé dans mon navigateur (Firefox).

    et puis, je ne vois pas de tag <server> ?
    A quel endroit dois-je mettre ce tag ?
    [Il était une fois Delphi ....]


  10. #10
    Membre actif Avatar de Cpas2latarte
    Inscrit en
    Janvier 2006
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 237
    Points : 255
    Points
    255
    Par défaut
    ça ne peux pas fonctionner ainsi car tu confonds le traitement réalisé sur le serveur et le traitement réalisé sur le client.
    Dans ton script tu essai d'ouvrir un fichier acces. Or le script s'execute sur le navigateur du client et le fichier access ne se trouve lui que sur le serveur.
    D'autre part, pour ouvrir ta base de données, tu essais dans le script d'instancier un ACTIVEX. Or Les contrainte de sécurité t'empeche de faire cela (pour eviter la propagation de virus SCRIPT tel i love you)

    Comme cela à été evoqué, il faut que tu "passes" le traitement du client vers le serveur.
    pour cela tu peux
    - utiliser un formulaure que tu va envoyé (changement de page)
    - faire une requete ajax
    voili
    Il n'y a que 2 choses infinies dans le monde :
    L'univers et la bétise humaine...
    Mais pour l'univers, je n'ai pas de certitude (A.E.)

  11. #11
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par zemeilleurofgreg Voir le message
    A quel endroit dois-je mettre ce tag ?
    Reprenons : tu à une base access sur le serveur, et tu veux y accéder, alors que ton hébergeur n'autorise pas les traitements serveurs ?

    Vérifie d'abord que ton hébergeur autorisera le JS "côté serveur" (ce qui n'est pas l'utilisation la plus classique, et que je ne maîtrise d'ailleurs pas vraiment )

    J'ai peur que les erreurs de syntaxe deviennent secondaires

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  12. #12
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Merci pour vos réponses les gars !
    Mais désolé de vous embêter je suis nul en développement web !

    Je vais commencer par me renseigner chez mon hébergeur pour le traitement Javascript côté serveur ! Et ensuite ... je sais pas, je sais plus

    @+
    [Il était une fois Delphi ....]


  13. #13
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Salut,

    je me suis renseigné chez mon hébergeur (Belgacom en Belgique) !
    Je dois acheter un nom de domaine pour pouvoir faire du traitement côté serveur.

    Merci quand même.

    @+
    [Il était une fois Delphi ....]


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

Discussions similaires

  1. Impossible de rentrer dans la fonction
    Par cissoux30 dans le forum C#
    Réponses: 1
    Dernier message: 13/04/2012, 11h38
  2. Réponses: 2
    Dernier message: 21/01/2011, 10h31
  3. Réponses: 2
    Dernier message: 12/06/2008, 16h51
  4. [Spip] Impossible d'entrer dans l'espace privé de mon site
    Par ulrichnansi dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 25/03/2008, 09h17
  5. congé sans solde pour entrer dans la fonction publique
    Par madine97 dans le forum Congés
    Réponses: 4
    Dernier message: 05/07/2007, 16h57

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