Requête Sql dans une page JSP
Résolu
Joyeux Lurrons
-
cat -
cat -
Bonjour,
Je souhaiterais faire une mise à jour d'une liste déroulante dans ma page JSP. J'entre donc le code suivant :
<p align="center"> <font face="Broadway"> <select name="codetype">
<%Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql");
Statement stmt
ResultSet rs = stmt.executeQuery("SELECT libelle, codetype FROM type;");
rs.last();
int nb = rs.getRow();
rs.beforeFirst();
int i = 1;
while(i<=nb){
rs.absolute(i);
String lib=rs.getString(1);
String code=rs.getString(2);
i++;
}%>
<option value="<%= code %>">
<% out.println(lib); %>
</option>
</select>
</font></p>
Mais j'ai des erreurs que je ne comprends pas. Elles se situent sur le Connection et le DriverManager de ma première ligne, sur le Statement de ma 2e ligne, Resultset de ma 3e ligne, code de ma 14e ligne et lib de ma 15e ligne.
Le type d'erreur revenant à chaque fois : Cannot be resolved ou Cannot be resolved to a type...
Need help, j'ai plus beaucoup de cheveux sur le crâne !
Merci d'avance,
Nikko
Je souhaiterais faire une mise à jour d'une liste déroulante dans ma page JSP. J'entre donc le code suivant :
<p align="center"> <font face="Broadway"> <select name="codetype">
<%Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql");
Statement stmt
ResultSet rs = stmt.executeQuery("SELECT libelle, codetype FROM type;");
rs.last();
int nb = rs.getRow();
rs.beforeFirst();
int i = 1;
while(i<=nb){
rs.absolute(i);
String lib=rs.getString(1);
String code=rs.getString(2);
i++;
}%>
<option value="<%= code %>">
<% out.println(lib); %>
</option>
</select>
</font></p>
Mais j'ai des erreurs que je ne comprends pas. Elles se situent sur le Connection et le DriverManager de ma première ligne, sur le Statement de ma 2e ligne, Resultset de ma 3e ligne, code de ma 14e ligne et lib de ma 15e ligne.
Le type d'erreur revenant à chaque fois : Cannot be resolved ou Cannot be resolved to a type...
Need help, j'ai plus beaucoup de cheveux sur le crâne !
Merci d'avance,
Nikko
A voir également:
- Strutes bon marché
- Supprimer une page dans word - Guide
- Imprimer tableau excel sur une page - Guide
- Créer une page facebook - Guide
- Comment traduire une page - Guide
- Page d'accueil - Guide
17 réponses
Bonjour kij_82,
Je n'ai jamais utilisé de bean. Pourrais-tu m'expliquer comment cela fonctionne ? Par avance merci !
Je n'ai jamais utilisé de bean. Pourrais-tu m'expliquer comment cela fonctionne ? Par avance merci !
Je n'ai importer aucun package, je me demandais justement comment on procédait car il n'accepte pas le code suivant : <% import .... ;%>
Je vais essayer avec la syntaxe que tu m'as fait parvenir !
Je vais essayer avec la syntaxe que tu m'as fait parvenir !
J'ai trouvé ça ici si ça peut t'aider pour autre chose :
http://www.lesjsp.com/index.php?option=com_content&task=view&id=33&Itemid=32
http://www.lesjsp.com/index.php?option=com_content&task=view&id=33&Itemid=32
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Cela me retire les erreurs sur les Statement, ResultSet et autres... mais il me reste une erreur que je ne comprends toujours pas :
<%Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT libelle, codetype FROM type;");
rs.last();
int nb=rs.getRow();
rs.beforeFirst();
int i = 1;
while(i<=nb){
rs.absolute(i);
String code = rs.getString(2);
String lib = rs.getString(1);
%><option value="<%code%>"><%out.println(lib);
i++;
}%>
il ne veut pas du "."...
<%Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT libelle, codetype FROM type;");
rs.last();
int nb=rs.getRow();
rs.beforeFirst();
int i = 1;
while(i<=nb){
rs.absolute(i);
String code = rs.getString(2);
String lib = rs.getString(1);
%><option value="<%code%>"><%out.println(lib);
i++;
}%>
il ne veut pas du "."...
Je te remercie beaucoup de ton aide ! Je t'aurais bien fais une tape dans le dos mais c'est pas possible ^^
Il veut que je mette un ";" à la place du "." ... Je ... Je trouve plus mes mots tellement ca m'énerve ^^
Non effectivement autant pour moi il n'est pas nécessaire de le faire ^^
Par contre peut être qu'il ne reconnait pas lib car il est déclaré avant (dans un autre scriptlet)
Si tu fais ça :
Ca donne quoi ?
Par contre peut être qu'il ne reconnait pas lib car il est déclaré avant (dans un autre scriptlet)
Si tu fais ça :
<%Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql"); Statement st = con.createStatement(); ResultSet rs = st.executeQuery("SELECT libelle, codetype FROM type;"); rs.last(); int nb=rs.getRow(); rs.beforeFirst(); int i = 1; while(i<=nb){ rs.absolute(i); String code = rs.getString(2); String lib = rs.getString(1); out.println("<option value='"+rs.getString(2)+"'>"+rs.getString(1)+"</option>"); i++; %>
Ca donne quoi ?
Il me met des erreures (dont une que j'ai corrigé)
à cette ligne : <%Class.forName("com.mysql.jdbc.Driver");
il me dit "insert "}" to complete Block"
"insert "}" to complete ClassBody"
"error on this token "}", delete this token"
l'erreur que j'ai corrigé : out.println("<option value='"+rs.getString(2)+"'>"+rs.getString(1)+"</option>";);
à cette ligne : <%Class.forName("com.mysql.jdbc.Driver");
il me dit "insert "}" to complete Block"
"insert "}" to complete ClassBody"
"error on this token "}", delete this token"
l'erreur que j'ai corrigé : out.println("<option value='"+rs.getString(2)+"'>"+rs.getString(1)+"</option>";);
C'est bon, ca marche ! Voici le code si ça t'intéresse :
<p align="center"> <font face="Broadway">
<select name="codetype">
<%Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT libelle, codetype FROM type;");
rs.last();
int nb=rs.getRow();
rs.beforeFirst();
int i = 1;
while(i<=nb){
rs.absolute(i);
String code = rs.getString(2);
String lib = rs.getString(1);
%><option value=<%=code%>><%=lib %><%
i++;}
%>
</option></select></font></p>
<p align="center"> <font face="Broadway">
<select name="codetype">
<%Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/projet", "root", "mysql");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT libelle, codetype FROM type;");
rs.last();
int nb=rs.getRow();
rs.beforeFirst();
int i = 1;
while(i<=nb){
rs.absolute(i);
String code = rs.getString(2);
String lib = rs.getString(1);
%><option value=<%=code%>><%=lib %><%
i++;}
%>
</option></select></font></p>
bonjour,
je veut bien savoir toutes les requetes possibles qu'on peut utilser dans un code jsp pour acceder à une base de données mysql.
merci d'avance....
je veut bien savoir toutes les requetes possibles qu'on peut utilser dans un code jsp pour acceder à une base de données mysql.
merci d'avance....
Bonjour,
Ce ne serait pas plus simple de faire ça dans ton code java, de stocker le résultat dans un bean et d'afficher les valeurs dans ta JSP à partir du bean ?
Ce ne serait pas plus simple de faire ça dans ton code java, de stocker le résultat dans un bean et d'afficher les valeurs dans ta JSP à partir du bean ?
Un bean est une classe java qui ne te sert généralement qu'à stocker des informations. Tu as donc des propriétés (privées), avec les accesseurs qui vont avec (getter et setter).
Enfin, avant de me lancer dans des explications, est ce que tu utilise struts, tomcat pour lancer ton application web ?
Enfin, avant de me lancer dans des explications, est ce que tu utilise struts, tomcat pour lancer ton application web ?
Ha, pas la peine que je me lance dans des explications alors. On peut oublier ma première remarque.
Est-ce que tu as bien inclus les packages nécessaires en début de page jsp.
Par exemple comme ceci :
A priori il doit te manquer certains packages (ceux pour lesquels une erreur t'es signalée)
ps: si tu veux connaitre les packages de tes classes regarde sur l'api java :
https://docs.oracle.com/javase/1.4.2/docs/api/
Est-ce que tu as bien inclus les packages nécessaires en début de page jsp.
Par exemple comme ceci :
<%@ page import= "java.sql.*"%>
A priori il doit te manquer certains packages (ceux pour lesquels une erreur t'es signalée)
ps: si tu veux connaitre les packages de tes classes regarde sur l'api java :
https://docs.oracle.com/javase/1.4.2/docs/api/