Parcourir une base de données [JSP] - Java - Programmation
Marsh Posté le 24-02-2005 à 17:14:19
poste pas ton code HTML dans la rublique "HTML/CSS/Javascript"
tu risque de te faire lincher!
-pas de tableau a une ligne par colonne,
utilise ul li
- pas d'évènement onMouseOver, onMouseOut, utilise css ( :hover )
pour ce qui est du java :
écrit plûtot if (act.equals("precedent" ))
que if (act.compareTo("precedent" )==0)
idem:
écrit plutôt:
Code :
|
que
Code :
|
-----
Maintenant si j'ai bien compris ce que tu veux faire,
cela ne sert pas a gran chose car apparement tu selectionnes
tout et tu veux déplacer un curseur dans ta sélection...
pourquoi ne pas faire un LIMIT et un ORDER BY dans
ta requêtre Sql ?
Bonne continuation
Marsh Posté le 24-02-2005 à 18:48:36
Merci pour tes conseils, je vais essayer de tout gérer par des requêtes SQL plutôt que de faire avancer le curseur (resultset). Cependant, j'avoue que ça aurait été plus simple de trouver une solution pour incrémenter un variable pour avancer et la décrémenter pour reculer. Enfin, c'est sûrement pasque j'suis un débutant en jsp et j'utilise des solutions peu appropriées.
Marsh Posté le 24-02-2005 à 19:03:40
En fait,
il faut que tu retiennes ta position actuelle,
et que tu la passe en paramètre dans tes liens
Code :
|
et dans ta requête
Code :
|
Ensuite, tu peux ajouter une variable pas, pour ne plus faire des pas de 1, mais de n...
Marsh Posté le 24-02-2005 à 19:27:19
J'ai pas vraiment bien compris coment je pouvais récuperer la position sur le lien carnet.jsp?action=precedent&pos="+pos-1+"
Ensuite je vois pas coment l'expoiter avec limit pos,1
J'espere que ca te deranges pas de m'apporter quelques petites explications supplementaires..
Marsh Posté le 26-02-2005 à 13:27:18
Tu récupères "pos" comme tu récupères action...
Code :
|
Ensuite tu le cast avec un new Integer(pos).intValue() pour faire plus ou moins un
et dans ta requete Sql
Code :
|
et après tu affiches tous ce que tu récupère dans ton ResultSet...
Marsh Posté le 24-02-2005 à 16:15:28
Salut à tous,
J'suis en train de tester le JSP car j'aime programmer en JAVA.
Cependant, j'ai un problème pour parcourir ma base de données Mysql en JSP. Le problème est tout bête, je narrive pas à faire une variable qui s'incrémente et se décrémente quand je clique sur mon menu fait en javascript.
Le menu est fait ainsi :
<table width="60%" cols="4" align="center">
<tr>
<td colspan="4"><hr width="100%" color="#7DFFA0"></td>
</tr>
<tr>
<td align="center" valign="center">
<div class="menu" onMouseOver='couleur(this,vert,bleu)' onMouseOut='couleur(this,bleu,vert)'
onClick='document.location="carnet.jsp?action=premier";'><<</div>
</td>
<td align="center" valign="center">
<div class="menu" onMouseOver='couleur(this,vert,bleu)' onMouseOut='couleur(this,bleu,vert)'
onClick='document.location="carnet.jsp?action=precedent";'><</div>
</td>
<td align="center" valign="center">
<div class="menu" onMouseOver='couleur(this,vert,bleu)' onMouseOut='couleur(this,bleu,vert)'
onClick='document.location="carnet.jsp?action=suivant";'>></div>
</td>
<td align="center" valign="center">
<div class="menu" onMouseOver='couleur(this,vert,bleu)' onMouseOut='couleur(this,bleu,vert)'
onClick='document.location="carnet.jsp?action=dernier";'>>></div>
</td>
</tr>
<tr>
<td colspan="4"><hr width="100%" color="#7DFFA0"></td>
</tr>
</table>
Je fais donc un test a chaque passage pour voir l'opération demandée :
request.getParameter("action" ).
Ensuite, je fais appel une méthode pour plaser le ResultSet au bon endroit pour lire dans la base de données. Le code -->
String act = request.getParameter("action" );
if (act.compareTo("premier" )==0)
{
debut();
}
if (act.compareTo("precedent" )==0)
{
precedent();
}
if (act.compareTo("suivant" )==0)
{
prochain();
}
if (act.compareTo("dernier" )==0)
{
positionFin();
}
Le code des méthodes pour placer le ResultSet :
Finalement, je lis la position avec la méthode suivante :
Et dans mon code JSP je fais ca : pos = (String)lignes.get(position);
pour ensuite afficher l'element de la base de donnée.
Ça marche pour placer le curseur en début et a la fin mais pas pour suivant et précédent. Je ne sais pas comment faire pour placer une variable qui s'incrémente et se décrémente pour résoudre le problème.
Est-ce que je fais bien de parcourir les éléments de la base ainsi ou je devrai utiliser un autre moyen?
Mici pour vos réponses