Avian Gamers Network

Forum
It is currently Sat May 03, 2025 7:04 pm

All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 11 posts ] 
Author Message
PostPosted: Mon Jul 12, 2004 8:56 pm 
Offline
Site Admin
User avatar

Joined: Mon Oct 29, 2001 9:01 pm
Posts: 2417
Location: Baton Rouge, LA / Kuwait / Kandahar
I am wanting to create a HTML interface for my USB storage device.

Is there any code that would scan a folder and list each file in the folder as a link to the file?


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 12, 2004 9:37 pm 
Offline
Site Admin
User avatar

Joined: Mon Jul 01, 2002 4:33 am
Posts: 6698
Location: Silver Spring, MD
this is pretty straight forward code but I am not sure if HTML can do it. You would need a dynamic language like PHP or ASP or even JSP.

The main reason is opening a folder is one thing but then looping a command and writing the file to a text link is a whole other thing.

the fopen and fclose command is a nice place to start some research on the topic. Just do a google on php+fopen

_________________
Moge


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 12, 2004 9:40 pm 
Offline
Site Admin
User avatar

Joined: Mon Jul 01, 2002 4:33 am
Posts: 6698
Location: Silver Spring, MD
I should also note that the fopen command only works with the folder structure accessable via the HTML/PHP language so it would need to be within the Web folder.

If you want to look for folder on your standard HD then you are looking for a C or C+ or even PERL script

_________________
Moge


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 12, 2004 10:13 pm 
Offline
Site Admin
User avatar

Joined: Mon Oct 29, 2001 9:01 pm
Posts: 2417
Location: Baton Rouge, LA / Kuwait / Kandahar
What I want to do is have a web interface to organize my storage devices contents. I am wanting the file listing to be dynamic so that I do not have to do the html every time I add a new file.

-If I want to look at my resume, I go to the resume page and from there all the versions of my resume are listed. (I would have a resume folder holding all resumes)

-If I want to look at all my files for my CM 4200 class I go to that classes page, and from there all the files are listed that are in my CM 4200 folder.

Most things that I found so far ask for asp or something like that. Everythign seems to be server oriented.


I ran the following bit of code, but upon viewing it, I get a window that says I must allow the activeX Object to run... which is the error message on line 15 of the code.

Code:
<html>
<head>
    <script type="text/javascript">
    <!--
        var fsObj = null;
        var foldedToList = 'C:\\Windows\\System32';

        function listFiles() {
            try {
                fsObj = new ActiveXObject('Scripting.FileSystemObject');
            }
            catch (err) { }

            if (!fsObj) {
                alert('You must allow the ActiveX object to run!');
            } else {
                if (!fsObj.FolderExists(foldedToList)) {
                    alert('The folder:\n\n' + foldedToList + '\n\ndoes not exist!');
                } else {

                    // at this stage, we can list all files
                    var folderObj = fsObj.GetFolder(foldedToList);
                    var filesObj = new Enumerator(folderObj.files);
                    filesStr = '';
                    while (!filesObj.atEnd()) {
                        var tempFile = filesObj.item();
                        filesStr += '<a href="' + tempFile.Path + '">' + tempFile.Name + '</a><br>';
                        filesObj.moveNext();
                    }
                    document.getElementById('fileList').innerHTML = filesStr;
                }
            }
        }
    //-->
    </script>
</head>
<body onload="listFiles();">
    <div id="fileList"></div>
</body>
</html>


By no means am I bound to this code. I will use anything that works on my PC and the PCs at school.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 12, 2004 10:22 pm 
Offline
Site Admin
User avatar

Joined: Mon Oct 29, 2001 9:01 pm
Posts: 2417
Location: Baton Rouge, LA / Kuwait / Kandahar
Ok dumb me... it is working now, but I need to refine it to the folders I need it to look in.

** I wonder if this ActiveX stuff will be blocked at school?


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 12, 2004 10:35 pm 
Offline
Site Admin
User avatar

Joined: Mon Jul 01, 2002 4:33 am
Posts: 6698
Location: Silver Spring, MD
nice find. The good thing about Java is that is will run outside the server environment and look into files on your drive. I know almost nothing about Java but I may poke around the script to see how it works and if I can tweak it a bit.

_________________
Moge


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jul 12, 2004 11:25 pm 
Offline
Site Admin
User avatar

Joined: Mon Oct 29, 2001 9:01 pm
Posts: 2417
Location: Baton Rouge, LA / Kuwait / Kandahar
How can I make it look in the right place no matter what PC the USB Drive is plugged into????

The code is directed to the folder with this line:
Code:
var foldedToList = 'C:\\Windows\\System32';


For my PC, the removable USB drive is F:\ so as long as the code has the correct path it can display the folder contents. For example, right now I am testing it by looking at one of my web graphics folders. I am using the following which works fine on my PC:
Code:
var foldedToList = 'F:\\GUI\\images\\MainButons';


However on other PCs it may be a different drive letter. On my wife's it is E:\. Thus on her PC the code can't find the folder F:\\GUI\\images\\MainButons.

In html, when directing to images, the full path is not needed. You can just start with the folder you are in and leave out the preceding stuff such as
Code:
<img src="images/MainButons/MButton_Main_on.jpg" ....


Is there any way I can make my javascript work with out giving it the full path? Is there a way to do it like we do the image paths? If I did not have to give the full path, I may be able to get around the changing drive letter problem.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 13, 2004 12:45 am 
Offline
Site Admin
User avatar

Joined: Mon Jul 01, 2002 4:33 am
Posts: 6698
Location: Silver Spring, MD
with PHP this is a very easy thing to do, all I would do is make a drop down list that has A: B: C: D: E: F: G: H: and you could choose which to pass. Then it would use the Variable (Var) and substitue $drive for the chosen letter. But in Java I would have no way of knowing how to pass a Var, although I know it is possible.

One quick solution. I assume you have this HTML file on your flash card device? If so just make 4 or 5 files labels filesD filesE filesF etc and edit each file so that the drive relates to the fileX. Pretty clunky but effective for a short term fix.

Again, I just don't know Java so I am no help.

_________________
Moge


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 13, 2004 12:48 am 
Offline
Site Admin
User avatar

Joined: Mon Jul 01, 2002 4:33 am
Posts: 6698
Location: Silver Spring, MD
BTW how did you get around the Active X error message?

_________________
Moge


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 13, 2004 1:11 am 
Offline
Site Admin
User avatar

Joined: Mon Oct 29, 2001 9:01 pm
Posts: 2417
Location: Baton Rouge, LA / Kuwait / Kandahar
I was getting the error when I was previewing the file in my html editor.... but when I view the file with my real browser it works fine.

On pages with the script, I get an activeX warning. I choose OK, then I get another warning window from my antiVirus stopping the script, but I choose to let it run... and everything works perfectly. Now I have the antivirus warning set to let this particular script pass without the warning.

Until I get the dynamic drive path problem fixed, I will be populating the drive will all my school stuff, and building the buttons for the school section of the site. Basically filling the thing up with all the files I know I will need, which are of the type that would be hard coded. So far it is moving along fast… but I am holding off on the hover script until tomorrow when I am not so tired.

Obbo will be getting up soon. I am hoping that he may know how to get around this dynamic drive path problem.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 13, 2004 1:19 am 
Offline
Site Admin
User avatar

Joined: Mon Jul 01, 2002 4:33 am
Posts: 6698
Location: Silver Spring, MD
ahh yes I opened it in IE just fine. I couldn't get it to work while viewing through Mozilla, my default browser.

_________________
Moge


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 11 posts ] 

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: Bing [Bot] and 33 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group