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

HTML Discussion :

modifier/supprimer une ligne d'une table.. jsp/oracle


Sujet :

HTML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2012
    Messages : 21
    Par défaut modifier/supprimer une ligne d'une table.. jsp/oracle
    Bonjour,

    Je dispose d'une table qui est construite à partir de la saisie de formulaire. en bout de chaque ligne, je voudrais effectuer les opérations modifier et supprimer.

    L'un de mes principaux problèmes est que je ne dispose pas d'une colonne dans ma table qui me revoie l'id de ma ligne...
    il s'agit d'un table avec plusieurs colonnes, dateDebut, dateFin et message, je peux donc avoir plusieurs messages pour les mêmes dates.

    Voici ma page d'accueil avec mes 2 boutons:


    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    <%@ include file="traitementBdd.jsp"%>
    <%@ page errorPage="pageErreur.jsp"%>
    <%@ page import="java.util.Date" %>
    <!doctype html>
     
    <html>
    	<head>
    		<title>Outils Pilotage MySys</title>
    		<meta charset="ISO-8859-1" />
    		<link rel="stylesheet" href="../../../OPM/css/general.css"/>
    		<link rel="stylesheet" href="../../../OPM/css/accueilMsg.css"/>	
    		<link rel="stylesheet" href="../../../OPM/javascript/jquery-ui/jquery-ui.css"/>
     
     
     
    	</head>
    	<body>
    	<section class="page">
    		<!--Import menu-->
    		<%@ include file="menu.jsp"%>
    		<h1>Bienvenue sur Outils Pilotage MySys</h1>
     
    		<a href="nouvMsg.jsp" id="ajouter"><img src="../../../OPM/image/plume.png" alt="Ajout" id="stylo" title="Créer un message de service"/>Ajouter un message</a>
    		<h2>Message de service</h2>
     
    	<%
            try{            
                    //Récupération de l'utilisateur
                    String user = gHabls.Utilisateur().getUserName().substring(1);
                    String caisse = gHabls.Utilisateur().getCaisse();
                    if (gHabls.estCTR()) 
                    {                       
                            //Attribution d'une caisse par défaut car les internes ITCE n'en ont pas
                            caisse="ce3";
                    }       
                    
                    int count = 0;
                    connexionOracle();
                    
                    
                    
                    //REQUETE RECHERCHE MESSAGE POUR L'UTILISATEUR
                    String reqSelect = "SELECT DATDEB, DATFIN, MSG FROM DCTL0.DCTL_OPG_MSG WHERE SYSDATE <= DATDEB ORDER BY DATDEB ASC";
                    ResultSet resSelect = executeQuery(reqSelect);
                    count = resSelect.getFetchSize();
     
            
                    if (count == 0)
                    {
                            %><h2><marquee>aucun nouveau message</marquee></h2><%
                    }
                    else 
                    {
                            %>
    			<table id="tableau" > <!-- Afficher la liste des messages dans un tableau-->
    				<thead>
    					<tr>
    						<th>A patrir du:
    						<th>Jusqu'au:				 
    						<th>Message:
    						<th colspan="2">Supprimer/Modifier
    			<%
                            for (int i=0; i<count; i++) 
                            { 
                                    int index=1;
                                    while (resSelect.next()) 
                                    {                                       
                                            String dateDebut = resSelect.getString("DATDEB");                                       
                                            String dateFin = resSelect.getString("DATFIN");                                 
                                            String message = resSelect.getString("MSG");
     
                                            %>
    					<tbody> 
    					<tr id="<%=index%>">
    					<td class="tabEntete" width="10%"><%=dateDebut%>	
    					<td class="tabEntete" width="10%"><%=dateFin%>
    					<td><%=message%>
    					<td class="tabEntete" width="7%"><a href="supprMsg.jsp" id="supprimer"><button type="button" id="boutonSuppr" title="Supprimer" onclick="supprimer();"><img src="../../../OPM/image/corbeille.png" alt="supprimer"></button>
    					<td class="tabEntete" width="7%"><a href="modMsg.jsp" id="modifier"><button type="button" id="boutonMod" title="Modifier" onclick="modifier();"><img src="../../../OPM/image/plume.png" alt="modifier"></button>
    				<%                                              
                                    index++;}
                            }
                    }  
                      
            deconnexionOracle();
            }
            
            catch ( Exception e)
            {
                    out.print(e.toString());
            }%>		
    	</table>
    	<!--Paragraphe pour l'alerte de suppresion d'un favori-->
    	<article id="confirm" style="display:none;" >
    		<p>Etes-vous sûr de vouloir supprimer ce message?</p>
    	</article>
    	</section>
    	<script src="../../../OPM/javascript/html5shiv.js"></script><!--Compatibilité IE8 et html5-->
    	<script src="../../../OPM/javascript/jquery-1.7.2.js"></script>
    	<script src="../../../OPM/javascript/jquery-ui/jquery-1.7.2.min.js"></script>	
    	<script src="../../../OPM/javascript/jquery-ui/jquery-ui-1.8.20.custom.min.js"></script>
    	<script src="../../../OPM/javascript/jquery-ui/jquery.ui.dialog.js"></script>
    	<script>
            //Couleur du lien du menu
            $(document).ready( function () {
                    $('#msg').addClass("actif");
                    });
                    
            /*---suppresion d'un message---*/
            function supprimer ('num') 
            {
                    $('#confirm').dialog(
                    {
                                    resizable: false,
                                    draggable:false,
                                    width:480,                      
                                    modal: true,
                                    title:"Suppresion d'un message",
                                    buttons: 
                                            {
                                                    "Oui": function() 
                                                    {
                                                            $( this ).dialog( "close" );
                                                            location.href="supprMsg.jsp?num="+num;                  
                                                    },
                                                    Non: function() 
                                                    {
                                                            $( this ).dialog( "close" );                                                                                                                                            
                                                    }
                                            }
                    });
            } 
            </script>
    	</body>
    </html>


    et voici la page de suppression:


    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
    46
    47
    48
    49
    50
    51
    52
    53
    <%@ include file="traitementBdd.jsp"%>
    <%@ include file="parametres.jsp"%>
    <%@ page errorPage="pageErreur.jsp"%>
    <!doctype html>
    <html>
    <head>
     
    </head>
     
    <body>
    <!-- Suppression d'un message-->
    <%
    try 
    {
            connexionOracle();
            /*String message= request.getParameter("message");
            String dateDebut= request.getParameter("dateDebut");
            String dateFin = request.getParameter("dateFin");
            String caisse = gHabls.Utilisateur().getCaisse();
            String codOriginFinancier = gHabls.Utilisateur().getCodeCaisse();
            String user = gHabls.Utilisateur().getUserName().substring(1);
            String buff = dateDebut + "|" + dateFin + "|" + message + "|" + user;*/
     
            String s_num=request.getParameter("rowid");     // index de la ligne du fichier à suppr
     
    //REQUETE SUPPRESSION FAVORIS DE L'UTILISATEUR
            String reqSupp = "DELETE  DCTL0.DCTL_OPG_MSG WHERE .........="+s_num;
            int resSupp = executeUpdate(reqSupp);
            
    //REQUETE DIMINUTION DE L'ORDRE D'AFFICHAGE DES AUTRES FAVORIS DE L'UTILISATEUR
    /*      String reqModifOrdrAffc = "UPDATE  DCTL0.DCTL_OPG_MSG SET  WHERE 
            int resMod = executeUpdate(reqModifOrdrAffc);
    */
            
            deconnexionOracle();
    %>
    	<script type="text/javascript">
                    location.href="accueilMsg.jsp"
            </script>
    <%
    }
    catch(SQLException ex) 
            {
            out.println("Erreur SQL : " + ex.toString());
            }
    catch (Exception e )
            {
            out.println("Message d'erreur : "+e.toString());
            }
    %>
     
    </body>
    </html>


    Merci de votre aide.

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2012
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 328
    Par défaut
    Simplement, dans ta boucle qui affiche les boutons, entre directement le paramètre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <button type="button" id="boutonSuppr" title="Supprimer" onclick="supprimer(<%=variableId%>);">

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2012
    Messages : 21
    Par défaut
    Cela ne fonctionne pas.
    J'ai ajouté mes 3 variables comme tu me l'as indiqué... j'ia toujours une erreur dans mon DELETE car je ne lui indique rien dans le WHERE..
    Et si j'enleve le lien vers la page de suppression, il ne se passe rien lorsque je clique sur l'image.

  4. #4
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2012
    Messages : 21
    Par défaut
    J'ai ajouté nomcolonne1="+variable pour le WHERE, je n'ai plus d'erreur oracle mais la ligne n'est pas pour autant supprimée...


  5. #5
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2012
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 328
    Par défaut
    En même temps on ne connais ni ta structure de données, ni tes algorithmes, on va avoir du mal à t'aider...


    je croyais que ton problème étant de passer l'id à ta fonction dans la vue, mais à priori c'est une erreur de base de données ? C'est la table de ta base qui n'a pas d'identifiant ?

  6. #6
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2012
    Messages : 21
    Par défaut
    non je n'ai pas d'identifiant pour repérer la ligne a modifier ou supprimer....

    Ma table (sous oracle) est composée de 6 colonnes mais aucune ne correspond à un id et mes supérieurs ne veulent pas rajouter de colonne...

    mon problème est de trouver une solution pour identifier la ligne sans connaitre le numéro..

    Et je ne sais pas a l'avance ce que l'utilisateur va saisir dans le formulaire, ni quelle ligne il va décider de supprimer ou modifier.

    Sinon j'ai un page JSP d'affichage (accueilMsg), une page de saisie (nouvMsg), une page d'ajout (ajoutMsg), une page de suppression (supprMsg) et une pour la modification (modMsg).
    Mes supérieurs m'ont demandé de garder cette structure.

    Est-ce que tu as besoin de d'autres infos?

    j'utilise ultraedit/tomcat/oracle

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/01/2015, 18h30
  2. [XL-2010] supprimer des lignes entre une constante et une variable
    Par tompom3108 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 06/01/2012, 16h46
  3. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  4. supprimer une ligne et une colonne d'une matrice
    Par nessing dans le forum C++Builder
    Réponses: 8
    Dernier message: 14/08/2007, 15h42
  5. [VB6]créer une copie d'une ligne d'une table
    Par h82kev dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 01/02/2006, 16h08

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