Partage
  • Partager sur Facebook
  • Partager sur Twitter

Récupérer une valeur ASP en javascript

runat=server...

Sujet résolu
    8 mars 2011 à 11:15:04

    Bonjour,

    Je suis confronté à un problème délicat au boulot !

    Je dois appeler une librairie qui génère des pdf. Cette librairie doit être appelé par du javascript coté serveur (runat="server")

    Sauf que le nom du pdf est contenu dans une variable asp. Je ne sais pas comment faire communiquer les deux langage côté serveur.

    J'ai essayé plein de chose et rien ne fonctionne. J'ai pensé a écrire un fichier en asp avec la valeur voulu et de le lire avec le Jscript coté serveur ce qui techniquement pourrai être possible. Mais le problème c'est que j'ai l'impression que le javascript n'est pas fait pour lire un fichier. Ce que je comprend car c'est un langage coté client habituellement.
    Quelqu'un a t'il la solution ?

    Cordialement
    • Partager sur Facebook
    • Partager sur Twitter
      8 mars 2011 à 13:35:45

      Salut,

      En ASP classique ?

      Ne peux tu faire une fonction que tu appelles dans une page avec ta valeur serveur, dans le

      <script>
      laFonctionJS("<% Response.write(TaVariableASP) %>");
      </script>
      

      • Partager sur Facebook
      • Partager sur Twitter
        8 mars 2011 à 13:58:41

        Oui en Asp classique.

        Cette solution est la plus intuitive et malheureusement elle ne fonctionne pas. c'est ce que j'avais testé en premier.
        • Partager sur Facebook
        • Partager sur Twitter
          8 mars 2011 à 14:06:13

          Étrange, je ne vois pas pourquoi ça ne passerait pas, il te pond pas d'erreur ? tu peux vérifier qu'il récupère bien la valeur?
          • Partager sur Facebook
          • Partager sur Twitter
            8 mars 2011 à 14:09:20

            En utilisant ta solution l'erreur est la suivante :

            Erreur de compilation Microsoft JScript erreur '800a03ea'

            Erreur de syntaxe

            Mais c'est normal car là, le javascript est coté serveur et cela reviens donc a imbriquer deux langages coté serveur l'un dans l'autre. Ce qui me parait louche.
            • Partager sur Facebook
            • Partager sur Twitter
              8 mars 2011 à 14:18:11

              Oui effectivement, ça fait bien longtemps que je n'ai plus fais de l'asp classique, me rappelle plus vraiment :p

              Ta valeur est elle dans le scope global de ton ASP ? si oui ne peux tu pas récupérer ta valeur avec JS directement ?
              • Partager sur Facebook
              • Partager sur Twitter
                8 mars 2011 à 14:28:21

                Je ne sais pas ce que tu entends par scope global. Si c'est le globalASA c'est non.
                Et l'autre solution que j'avais envisagé c'est de créé un fichier avec ASP avec la valeur que je voulais et la récupérer en Javascript comme tu le propose. Mais la encore probleme ! Javascript ne permet pas de lire les fichiers car il n'est pas censé savoir le faire coté client !

                (oui je te l'accord l'asp est old school mais je n'ai pas le choix...)
                • Partager sur Facebook
                • Partager sur Twitter
                  8 mars 2011 à 14:36:34

                  T’inquiète, je suis déjà passé par des obligations de ce genre.

                  Ce que je voulais dire, c'est comme sur ce site:
                  http://aspjavascript.com/lesson04.asp

                  Communication JS - VBS, une variable dans un des langages dans le scope global est accessible a l'autre langage également.
                  Je suis sûr que tu peux faire quelque chose dans le genre.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    14 mars 2011 à 10:37:02

                    OUi voila, d'après ton lien c'est possible. Et cela devrait être le cas pour moi aussi mais j'ai toujours une erreur.
                    Peux tu préciser ce que tu appelle le scope global ?
                    Merci de m'avoir montré qu'on pouvait le faire sinon tout mon boulot sur les pdf serait fichu.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      14 mars 2011 à 13:20:04

                      Le scope global c'est la déclaration d'une variable par exemple hors de toute fonction, du coup elle est accessible par des fonctions sans pour autant leur appartenir.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        14 mars 2011 à 14:49:46

                        Hum il n'y a rien a faire, je n'arrive pas a faire communiquer les deux langages. mon message d'erreur est :

                        Citation : IIS


                        Erreur de compilation Microsoft JScript erreur '800a03ea'

                        Erreur de syntaxe

                        /_sc/creationdevis.asp, ligne 170

                        pdf.Text(10,66, <%response.write("mlklmk")%>)



                        J'utilise le composant FPDF pour générer des pdf a partir d'asp.
                        Il doit bien y avoir un moyen de rentrer mes variables sinon ce composant ne sert a rien. :s
                        • Partager sur Facebook
                        • Partager sur Twitter
                          19 mars 2011 à 16:54:27



                          Ne peux tu écrire directement pdf.Text(10,66, "mlklmk">) ?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            19 mars 2011 à 17:14:19

                            Je viens de demander que le sujet soit déplacé (dans le forum ASP), car la méthode de transition y est, c'est le premier poste de hakurou. Le javascript étant coté client, il suffit que le serveur écrive la valeur au milieu du code JS.

                            Il s'agit maintenant d'un problème d'ASP qui n'arrive pas à "écrire". Tu auras donc plus de chance sur le forum asp :]

                            Messieurs les modérateurs, j'ai fais une erreur lors de la demande de déplacement !


                            Edit:
                            Après avoir tout mieux relu, en fait l'approche de hakurou n'est pas du tout bonne.

                            Ce que tu souhaites, c'est à partir du javascript, appelé une "page" ASP, qui fasse la conversion pdf, c'est bien cela?
                            • Partager sur Facebook
                            • Partager sur Twitter
                              20 mars 2011 à 0:23:34

                              Le JS est COTÉ SERVEUR.
                              Bref, côté serveur, t'as forcément un des deux qui est exécuté avant l'autre.
                              Si c'est l'ASP, tu peux mettre la variable en générant le JS.
                              Si c'est le JS qui génère l'ASP, tu peux pas puisque le JS n'existe plus au moment ou l'ASP est appelé...

                              Et si tu galères vraiment, tu peux simplement stocker ça dans un fichier.
                              • Partager sur Facebook
                              • Partager sur Twitter
                                20 mars 2011 à 0:52:16

                                Je pense qu'il doit falloir faire un truc du genre Javascript qui appelle l'ASP en "ligne de commande".

                                Genre pour php, il faudrait que le Javascript lance la commande système "php -f lefichier.php"
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  21 mars 2011 à 16:42:21

                                  Oui ces réponse sont cohérentes, après vérification effectivement le JS est éxécuté en premier et donc a ce moment là le serveur ne connait pas l'ASP car il n'a pas été éxécuté.
                                  La solution serai effectivement de passer par un fichier mais je ne crois pas que JS soit conçu pour pouvoir créer des fichiers sur le serveur... ce qui me parait logique.
                                  Je pense donc que ce problème est insolvable et de toute manière mon patron ma demander de faire les devis directement en html parce qu'on a perdu trop de temps sur la génération de pdf en ASP ce que je comprend.
                                  Je vous remerci donc tous de vous être penché sur mon problème casiment insolvable. Je met le sujet en résolu pour laisser couler ce topic dans les profondeur du SDZ :)
                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Récupérer une valeur ASP en javascript

                                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                  • Editeur
                                  • Markdown