Affichage des noms de fichiers dans une ListBox

Résolu
Signaler
Messages postés
39
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
31 juillet 2006
-
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012
-
Je débute en ASP et je voudrais faire une ListBox qui récupairerais les noms des fichiers text dans un repertoire et ensuite en cliquant sur le bouton go, je dois pouvoir récupéré ce qui a été séléctionné.

Voici mon code (en vbscript) mais il ne fonctionne pas :

Set LookObj = CreateObject("Scripting.FileSystemObject")
Set FolderSet = LookObj.GetFolder(URLSet)
Set FileSet = FolderSet.Files
For each folderItem in FileSet
Response.Write "<form method='POST' action='script_action_fr.asp' target='_blank'>"
Response.Write "<Select name='ScriptSelect'>"
Dim iLoop
Do While not FileSet.EOF
Response.Write "<Option value='"& CInt(FileSet) &"'>"& CInt(FileSet) &"</option>"
FileSet.MoveNext
Loop
Response.Write "</Select>"

Response.Write ""
Response.Write "</form>"

Merci d'avance pour vos réponse.
______________________
Le Black Dog c'est moi

5 réponses

Messages postés
39
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
31 juillet 2006

C'est cool ça fonctionne effectivement cela venait des "nothing" un peu trop tot. Donc voila le script complet qui fonctionne pour ceux que cela interresse :


<%
dim fso
dim rep
dim fichier
dim item
Set fso = CreateObject("Scripting.FileSystemObject")
Set rep = fso.getfolder("C:\Documents\test")
Set fichier = rep.files %>
<form method="POST" action="script_action_fr.asp" target="_blank">
<Select name="ScriptSelect">

<% For each item in fichier %>
<Option value="<%=item.name%>"><%=item.name%></option>
<% next %>

</select>
</form>

<%
Set fichier = nothing
Set rep = nothing
Set fso = nothing
%>

Merci pour ton aide Nicolas grand fan de Kojack
______________________
Le Black Dog c'est moi
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

En asp ca donnerais plutot un truc de ce genre la :

La page contenant le formulaire :

<%
dim fso
dim rep
dim fichier
dim item
Set fso = CreateObject("Scripting.FileSystemObject")
Set rep = fso.getfolder("tonrepertoire")
Set fichier = rep.files

Set fichier = nothing
Set rep = nothing
Set fso = nothing
%>

<form method="POST" action="script_action_fr.asp" target="_blank">
<Select name="ScriptSelect">

<% For each item in fichier %>
<Option value="<%=item.name%>"><%=item.name%></option>
<% next %>
</select>
</form>

La page recuperant l'info du formulaire (script_action_fr.asp):

<%
scriptselect = request("scriptselect")

'et ensuite tu fais tout avec scriptselect
'suivant ce que tu veux faire avec le fichier parce que je ne comprend
'pas trop ce que tu veux faire
'en tous cas si c'est que tu veux lire le contenu du fichier
'tu dois utiliser comme le fso d'avant mais avec la fonction readall
%>
Messages postés
39
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
31 juillet 2006

En ce qui concerne le script c'est plus ou moins ce que j'avais fait mais remis dans l'ordre si je ne me trompe pas. En fait le script fonctionne, il affiche une listbox, mais il ne m'affiche rien dans la listbox d'où mon problème.
Sinon juste pour d'autre débutant qui verais ce script, pour recuperer la selection il faut faire :
scriptselect=request.form("scriptselect")
'tu avais juste oublié le .form
Par contre j'ai fais afficher la source et je vois qu'il y a une erreur qui me dit : "Cet objet n'est pas une collection." en parlant de :

<% For each item in fichier %>

mais il ne m'affiche pas le message à l'écran il faut que j'aille dans la source de la page (bizarre). Il ne faut pas un composant particulier pour pouvoir utilisé un FSO ou pour l'afficher a l'ecran.
______________________
Le Black Dog c'est moi
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

Pour le request.form t pas obligé c juste plus propre de le mettre perso je ne le met jamais et ça fonctionne tout pareil.

Le répertoire que contient il bien des fichiers ?
As tu bien mis un chemin physique et non vituel ?
exemple : Set rep = fso.getfolder("d:\tests")
Si ça ne vient pas de là peut être ai-je fermé les éléments trop rapidement et essaies en déplaçant set fichier nothing, set rep nothing et set fso = nothing apres la boucle.
S'il ne t'affiche pas d'erreur peut être as tu placé en haut de ta page on error resume next
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

CONGRATULATION hahaha
bonne journée