Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/04/2011, 18h20   #1
Nouveau Membre du Club
 
Sleeg Adri
Inscription : juillet 2010
Messages : 130
Détails du profil
Informations personnelles :
Nom : Sleeg Adri

Informations forums :
Inscription : juillet 2010
Messages : 130
Points : 38
Points : 38
Par défaut Lister des infos de ma BD avec des catégories (elles-mêmes dans la BD)

Bonjour,

Je voudrais pouvoir lister des vidéos insérées sur mon site web par un utilisateur qui, lorsqu'il rentre les infos de la vidéos, à le choix entre plusieurs catégories.

Je voudrais maintenant que sur la page de sélection des vidéos, les liens soient générés et triés selon la catégorie avec à chaque fois le titre de la catégorie comme espace.

EX:
Catégorie1
Vid10
Vid13
Vid14
Catégorie2
Vid26
Vid32
Vid34
Catégorie3
Vid21
Vid22
Vid23

etc...

Pour le moment je n'ai réussi qu'à trier mes vidéos par catégories, sans pouvoir séparer les vidéos par le nom de la catégorie, comme dans l'exemple plus haut...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<%
Set rs = Server.CreateObject("ADODB.Recordset")
stmt= "SELECT * FROM Videos JOIN Categories ON Videos.VidCat = Categories.CatID ORDER BY VidCat;"
rs.Open stmt, Application("ConnX"),3,1,1
IF NOT rs.EOF THEN
	Do until rs.EOF
		Response.Write "<tr>" & vbCRLF
		Response.Write "<td align=center><a href=""videos-read.asp?id="& rs("VidID") &""">"& rs("VidTit") &"</a></td>" & vbCRLF
		Response.Write "</tr>" & vbCRLF
		rs.MoveNext
	Loop
END IF
 
rs.Close
set rs=Nothing
%>
Quelqu'un pour m'aider??

Merci d'avance!
sleeg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/04/2011, 20h03   #2
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 546
Points : 1 546
Bonjour

Bel exercice !

Il faut gérer la rupture par catégorie dans ta boucle do...loop : Si la catégorie correspond à celle de l'enregistrement précédent, on ne fait rien, sinon, on affiche le libellé de la catégorie. Penser à mémoriser la catégorie à chaque itération.
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/04/2011, 19h29   #3
Nouveau Membre du Club
 
Sleeg Adri
Inscription : juillet 2010
Messages : 130
Détails du profil
Informations personnelles :
Nom : Sleeg Adri

Informations forums :
Inscription : juillet 2010
Messages : 130
Points : 38
Points : 38
Ok, je vois plus ou moins la ce dont tu me parles mais je ne vois pas comment je peux créer des ruptures, je ne maitrise pas les conditions dans les boucles... Pourrais-tu être plus explicite?
sleeg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/04/2011, 20h32   #4
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 546
Points : 1 546
Un truc du style :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
' Memoriser la categorie
cat=""

IF NOT rs.EOF THEN
    Do until rs.EOF
                if cat=rs("catId") then
                   response.write("<td>" & rs("catTit") & "</td>")
                end if  
        Response.Write "<tr>" & vbCRLF
        Response.Write "<td align=center><a href=""videos-read.asp?id="& rs("VidID") &""">"& rs("VidTit") &"</a></td>" & vbCRLF
        Response.Write "</tr>" & vbCRLF
                ' Memoriser la categorie
                cat=rs("catId")
        rs.MoveNext
    Loop
END IF
(De mémoire, mais ca ne doit pas en être loin)
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/04/2011, 22h29   #5
Nouveau Membre du Club
 
Sleeg Adri
Inscription : juillet 2010
Messages : 130
Détails du profil
Informations personnelles :
Nom : Sleeg Adri

Informations forums :
Inscription : juillet 2010
Messages : 130
Points : 38
Points : 38
C'est une très belle avancée, merci roro06. Toutefois ce n'est pas encore cela

1. Les catégories s'affichent au dessus de chaque record (de chaque lien)
2. Sauf pour le premier record de la catégorie, la catégorie ne s'affiche pas...

Je dois maintenant trouver le moyen de faire que si c'est la premier record de tous les CatID identiques ajouter une ligne avec le titre de la catégorie...

Un autre moyen plus facile serait de créer un nombre de requête identique à mon nombre de catégorie avec la clause WHERE, mais je voudrais quand même trouver la solution voulue, car si j'ajoute une nouvelle catégorie plus tard par exemple, je devrais remodifier cette page. C'est une grosse prise de tête mais assez intéressante.

Vos suggestions sont les bienvenues.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
<%
Cat = ""
Set rs = Server.CreateObject("ADODB.Recordset")
stmt= "SELECT * FROM Videos JOIN Categories ON Videos.VidCat = Categories.CatID ORDER BY VidCat;"
rs.Open stmt, Application("ConnX"),3,1,1
IF NOT rs.EOF THEN
	Do until rs.EOF
		IF cat = rs("CatID") THEN
			response.write"<tr><td>" & rs("CatNameFR") & "</td></tr>"
		END IF
		Response.Write "<tr>" & vbCRLF
		Response.Write "<td align=center><a href=""videos-read.asp?id="& rs("VidID") &""">"& rs("VidTit") &"</a></td>" & vbCRLF
		Response.Write "</tr>" & vbCRLF
		Cat = rs("CatID")
		rs.MoveNext
	Loop
END IF
 
rs.Close
set rs=Nothing
%>
sleeg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 12h02   #6
Invité de passage
 
Alain
Inscription : juillet 2010
Messages : 1
Détails du profil
Informations personnelles :
Nom : Alain

Informations forums :
Inscription : juillet 2010
Messages : 1
Points : 1
Points : 1
Code :
1
2
3
4
5
<%
		IF cat <> rs("CatID") THEN
			response.write"<tr><td>" & rs("CatNameFR") & "</td></tr>"
		END IF
alfab1000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 12h50   #7
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 546
Points : 1 546
Citation:
IF cat <> rs("CatID") THEN
Bien vu, évidemment
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 17h28   #8
Nouveau Membre du Club
 
Sleeg Adri
Inscription : juillet 2010
Messages : 130
Détails du profil
Informations personnelles :
Nom : Sleeg Adri

Informations forums :
Inscription : juillet 2010
Messages : 130
Points : 38
Points : 38
Magnifique !!!

Merci pour votre aide précieuse, roro06 et alfab1000!
sleeg est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h57.


 
 
 
 
Partenaires

Hébergement Web