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

PL/SQL Oracle Discussion :

Insertion Javascript dans du pl/sql


Sujet :

PL/SQL Oracle

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut Insertion Javascript dans du pl/sql
    Bonjour à tous !!

    J'aimerais intégrer du code javascript dans mon code pl/sql, mais je ne sais pas comment m'y prendre.J'ai des checkboxes avec un bouton "Submit" et j'aimerais qu'il soit grisé si aucune checkbox n'est coché et inversement.
    Voici une de mes tentatives :p :
    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
     
    create or replace procedure formDomaine is
    begin
    htp.htmlOpen;
    	htp.header (1,'Site du Projet Tuteuré','CENTER');
    htp.bodyOpen;
    htp.print('<form name="frm" action="http://ntelline.cict.fr:7780/ETUPRE/b3bd3.formCategorie",method ="get")>');	
    htp.p('<script language=javascript>
    function apply()
    {
      document.frm.sub.disabled=true;
      if(document.frm.chk.checked==true)
      {
        document.frm.sub.disabled=false;
      }
     if(document.frm.chk.checked==false)
     {
     document.frm.sub.enabled=false;
     }
    }
    </script>');
    htp.tableOpen('BORDER="2px"');
    htp.tableCaption('Domaines','CENTER');
    for ligne in (select * from domaine) LOOP
    	htp.tableRowOpen;
    	htp.tabledata('<INPUT TYPE="checkbox" NAME="chk" onClick="apply()" value="'||ligne.id_domaine||'">');
    	htp.tableData(ligne.intitule);
    	htp.tableRowClose;
    end loop;
    htp.tableClose;
    htp.print('<input type="button" name="sub" value="submit" disabled>');
    htp.formClose;
    htp.print('</form>');
    htp.bodyClose;
    htp.htmlClose;
    end;
    Merci pour vos réponses !!

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    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 Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Tu nous poses des questions de HTML.
    Que ce soit généré par oracle ou par php ou par un fichier .htm, ça reste un problème HTML/javascript (pas le bon forum)

    Au lieu de tester en passant par oracle, génère d'abord le fichier htm à la main, et quand il marche, fais ton programme oracle pour générer ce fichier dynamiquement.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut
    C'est réellement un problème de pl/sql.
    Je viens de vérifier mon code que en HTML et il fonctionne...
    Alors que dans mon code pl/sql je fais appel a ma fonction javascript dans un LOOP. Je crois que le problème vient de la mais je n'arrive pas à le résoudre..
    Quelqu'un aurait une idée?

  4. #4
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    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 Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Donne le code HTML qui marche et celui qui marche pas.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut
    Voici le code HTML et JavaScript qui marche :
    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
    <script language=javascript>
    function apply()
    {
      document.frm.sub.disabled=true;
      if(document.frm.chk.checked==true)
      {
        document.frm.sub.disabled=false;
      }
      if(document.frm.chk.checked==false)
      {
        document.frm.sub.enabled=false;
      }
    }
    </script> 
    
    CODE HTML :
    <form name="frm">
    <input type="checkbox" name="chk" onClick="apply()">
    <input type="button" name="sub" value="submit" disabled>
    </form>
    Et voici le code insérer dans mon code pl/sql qui ne marche pas ... :
    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
     
    create or replace procedure formDomaine is
    begin
    htp.htmlOpen;
    	htp.header (1,'Site du Projet Tuteuré','CENTER');
    htp.bodyOpen;	
    htp.print('<script language=javascript>
    function apply()
    {
      document.frm.sub.disabled=true;
      if(document.frm.chk.checked==true)
      {
        document.frm.sub.disabled=false;
      }
     if(document.frm.chk.checked==false)
     {
     document.frm.sub.enabled=false;
     }
    }
    </script>');
    htp.print('<form name="frm" action="http://ntelline.cict.fr:7780/ETUPRE/b3bd3.formCategorie",method ="get")>');
    htp.tableOpen('BORDER="2px"');
    htp.tableCaption('Domaines','CENTER');
    for ligne in (select * from domaine) LOOP
    	htp.tableRowOpen;
    	htp.tabledata('<INPUT TYPE="checkbox" name="chk" onClick="apply()" value="'||ligne.id_domaine||'">');
    	htp.tableData(ligne.intitule);
    	htp.tableRowClose;
    end loop;
    htp.tableClose;
    htp.print('<input type="button" name="sub" value="submit" disabled>');
    htp.formClose;
    htp.print('</form>');
    htp.bodyClose;
    htp.htmlClose;
    end;
    Merci de répondre !!!!

  6. #6
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    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 Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Et bien, affiche le source HTML généré par Oracle.
    Tu verras la différence, et tu pourras tester sans même passer par Oracle.

    Le problème vient bien du code HTML (checkbox).

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut
    Je ne vois aucune différence :s pourrais tu m'indiquer mon erreur?

    Merci d'avance

  8. #8
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    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 Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Le code source généré par oracle devrait ressembler à ça :
    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
    <HTML>
    <script language=javascript>function apply()
    {
      document.frm.sub.disabled=true;
       alert(document.frm.chk.checked);
     if(document.frm.chk.checked==true) document.frm.sub.disabled=false;
     if(document.frm.chk.checked==false) document.frm.sub.enabled=false;
    }</script>
    <form name="frm" action="http://ntelline.cict.fr:7780/ETUPRE/b3bd3.formCategorie",method ="get")>
    <TABLE BORDER="2px">
    <TR>
    	<TD>
    	  <INPUT TYPE="checkbox" name="chk" onClick="apply()" value="id_domaine1">Lib Domaine 1</INPUT>
    	</TD>
    </TR>
    <TR>
    	<TD>
    	  <INPUT TYPE="checkbox" name="chk" onClick="apply()" value="id_domaine2">Lib Domaine 2</INPUT>
    	</TD>
    </TR>
    </TABLE>
    <input type="button" name="sub" value="submit" disabled>
    </FORM>
    </HTML>
    Visuellement
    • Lib Domaine 1
    • Lib Domaine 2
      [ Submit ]

    J'ai rajouté une alerte pour montrer ce que vaut l'état de document.frm.chk
    Résultat : "Indefined", donc ni true, ni false, tout simplement parce que les 2 checkbox ont le même nom.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut
    Je comprends le problème, mais je ne vois pas comment changer le nom de chaque checkbox ....Tu aurais une piste?

    Merci d'avance

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut
    Re !

    Je viens de changer le nom de chaque checkbox de cette manière:
    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
     
    create or replace procedure formDomaine is
    begin
    htp.p('<script language=javascript>
    function apply()
    {
      document.frm.sub.disabled=true;
      alert(document.frm.chk.checked);
      if(document.frm.chk.checked==true)
      {
        document.frm.sub.disabled=false;
      }
     if(document.frm.chk.checked==false)
     {
     document.frm.sub.enabled=false;
     }
    }
    </script>');
     
    htp.htmlOpen;
    	htp.header (1,'Site du Projet Tuteuré','CENTER');
    htp.bodyOpen;	
    htp.print('<form name="frm" action="b3bd3.formCategorie",method ="get")>');
    htp.print('<center>');
    htp.tableOpen('BORDER="2px"');
    htp.tableCaption('Domaines','CENTER');
    for ligne in (select * from domaine) LOOP
    	htp.tableRowOpen;
    	htp.tabledata('<INPUT TYPE="checkbox" name="'||ligne.id_domaine||'" onClick="apply()" value="'||ligne.id_domaine||'">');
    	htp.tableData(ligne.intitule);
    	htp.tableRowClose;
    end loop;
    htp.tableClose;
    htp.print('</center>');
    htp.print('<center><input type="submit" name="sub" value="Valider" disabled></center>');
    htp.formClose;
    htp.print('</form>');
    htp.bodyClose;
    htp.htmlClose;
    end;
    Cela ne marche toujours pas :/

  11. #11
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Bonjour,

    Si vous voulez arrêter de travailler en aveugle, sortez le code HTML généré vers une table ou un fichier pour pouvoir ensuite l'analyser.

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Par défaut
    je sais pas comment on fait... Enfin bon, si personne n'a la réponse , je laisse tomber...

  13. #13
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    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 Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Et beh.. .

    Clic droit sur la page internet, voir le code source..

    Comme je le dis depuis le début : C'est un problème javascript..
    Poste le sur le forum javascript pour avoir la réponse.
    Ensuite c'est seulement quand ton code javascript marchera que tu devras le générer par Oracle.

Discussions similaires

  1. insertion image dans une BDD SQL server
    Par yamyoung dans le forum Windows Forms
    Réponses: 3
    Dernier message: 14/04/2009, 11h10
  2. Réponses: 1
    Dernier message: 17/09/2008, 13h40
  3. [PHP-JS] Insertion Javascript dans PHP
    Par andrewwww dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 21/04/2006, 17h04
  4. Insertion javascript dans tableau HTML
    Par Rocca dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 08/08/2005, 12h28
  5. [web] insertion javascript dans du perl
    Par laluna dans le forum Web
    Réponses: 3
    Dernier message: 28/07/2003, 09h50

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