Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

aprire cartella su server

268 views
Skip to first unread message

Piero

unread,
Mar 14, 2013, 3:31:33 PM3/14/13
to
Ho delle pagine su un server locale, con Apache+PHP, per cui posso
mettere i permessi che voglio e non ho problemi di sicurezza.
Vorrei poter aprire una cartella sul server (Windows), cliccando su un
link di una pagina web.
Ho leggiucchiato qua e là, ed e' effettivamente un problema di
sicurezza.
E'possibile settare le cose in modo che io possa farlo da una rete
locale, visto che non ho problemi in questo senso?
Grazie.

bramante

unread,
Mar 14, 2013, 5:04:15 PM3/14/13
to
con la frase

> Vorrei poter aprire una cartella sul server (Windows), cliccando su un
> link di una pagina web.

vediamo se ho capito, tu tramite una pagina web vorresti vedere il
contenuto di una directory del server locale?

questo lo puoi fare tranquillamente senza rischi, se vuoi avere SOLO
visualizzazione (in pratica la fotocopia in una pagina web del contenuto
di una cartella) diverso il discorso se vuoi "lavorare" con la cartella.

PHP: List Contents of a Directory

// open this directory
$myDirectory = opendir(".");

// get each entry
while($entryName = readdir($myDirectory)) {
$dirArray[] = $entryName;
}

// close directory
closedir($myDirectory);

// count elements in array
$indexCount = count($dirArray);
Print ("$indexCount files<br>\n");

// sort 'em
sort($dirArray);

// print 'em
print("<TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks>\n");
print("<TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR>\n");
// loop through the array of files and print them all
for($index=0; $index < $indexCount; $index++) {
if (substr("$dirArray[$index]", 0, 1) != "."){ // don't list
hidden files
print("<TR><TD><a href=\"$dirArray[$index]\">$dirArray[$index]</a></td>");
print("<td>");
print(filetype($dirArray[$index]));
print("</td>");
print("<td>");
print(filesize($dirArray[$index]));
print("</td>");
print("</TR>\n");
}
}
print("</TABLE>\n");

----------------------------------------------
per leggere / scrivere su una directory

http://blog.chapagain.com.np/php-read-write-file-read-scan-directory/

Ciao

Piero

unread,
Mar 15, 2013, 3:51:55 AM3/15/13
to
Innanzitutto ti ringrazio per la tua cortese risposta.

On 14 Mar, 22:04, bramante <valmirkoTOGLIMAIUSC...@tiscali.it> wrote:

>
> con la frase
>
>  > Vorrei poter aprire una cartella sul server (Windows), cliccando su un
>  > link di una pagina web.
>
> vediamo se ho capito, tu tramite una pagina web vorresti vedere il
> contenuto di una directory del server locale?
>


Quasi.
In poche parole ho una pagina web che mi mostra una tabella di
clienti, e a fianco vorrei poterci mettere, per ogni cliente, un link
da cliccare per aprire la cartella dedicata ad ogni singolo cliente.
Cartella da aprire per poi poterci copiare tutti i documenti inerenti
quel singolo cliente.

Piero

unread,
Mar 16, 2013, 3:54:30 AM3/16/13
to
avevo pensato di fare un

exec("start ".$nome_cartella);

ma si blocca e non va avanti.
Sono su Windows XP e sto provando con Wampserver.
Qualcuno sa come devo settare le cartelle per potervi accedere in
questo modo?
E com'e' ilmodo per accedere ad host remoto?
mi sembra che si mettano due sbarre rovesciate e il nome dell'host, e
poi?
per il disco? basta la lettera senza i due punti?


bramante

unread,
Mar 16, 2013, 6:02:56 PM3/16/13
to
questo tipo di logica applicativa, la si fa in genere in modo virtuale,
cio� si salvano su filesystem o su db i documenti associandoli con un id
al cliente, non andando a creare una directory per ogni cliente.
immagina dropbox o drive di google, fare quello che hai intenzione di
fare tu, dovrebbero creare milioni di cartellle???

alla fine da quello che capisco hai una necessita di DMS (document
managment system), guardati qualsiasi DMS open source in php

http://www.phpkode.com/projects/tag/dms/


Ciao

Piero

unread,
Mar 17, 2013, 8:21:56 AM3/17/13
to
On 16 Mar, 23:02, bramante <valmirkoTOGLIMAIUSC...@tiscali.it> wrote:

> questo tipo di logica applicativa, la si fa in genere in modo virtuale,
> cioè si salvano su filesystem o su db i documenti associandoli con un id
> al cliente, non andando a creare una directory per ogni cliente.
> immagina dropbox o drive di google, fare quello che hai intenzione di
> fare tu, dovrebbero creare milioni di cartellle???
>
> alla fine da quello che capisco hai una necessita di DMS (document
> managment system), guardati qualsiasi DMS open source in php
>
> http://www.phpkode.com/projects/tag/dms/
>
> Ciao

Ne sono perfettamente consapevole, ma il cliente VUOLE, e sottolineo
*VUOLE* cosi'.
Avevo già trovato una soluzione per "inglobare", cioe' per far gestire
i files al DB, cosi' se voleva replicarlo,
o fare un backup, se ne occupava automaticamente il db, ma non c'e'
stato verso di farglielo capire.
Pensate se per esempio ci sono due cartelle per due clienti che si
chiamano "Mario Rossi".
Ne viene un casino.
Mi sta facendo impazzire con comportamenti non standard, tipo vuole
pulsanti sulle intestazioni delle colonne, deve selezionare con il
tasto destro, ecc ecc...
In ogni modo ti ringrazio del suggerimento.

bramante

unread,
Mar 17, 2013, 1:53:59 PM3/17/13
to
Il 17/03/2013 13:21, Piero ha scritto:

> On 16 Mar, 23:02, bramante <valmirkoTOGLIMAIUSC...@tiscali.it> wrote:
>
>> questo tipo di logica applicativa, la si fa in genere in modo virtuale,
>> cio� si salvano su filesystem o su db i documenti associandoli con un id
>> al cliente, non andando a creare una directory per ogni cliente.
>> immagina dropbox o drive di google, fare quello che hai intenzione di
>> fare tu, dovrebbero creare milioni di cartellle???
>>
>> alla fine da quello che capisco hai una necessita di DMS (document
>> managment system), guardati qualsiasi DMS open source in php
>>
>> http://www.phpkode.com/projects/tag/dms/
>>
>> Ciao
>
> Ne sono perfettamente consapevole, ma il cliente VUOLE, e sottolineo
> *VUOLE* cosi'.
> Avevo gi� trovato una soluzione per "inglobare", cioe' per far gestire
> i files al DB, cosi' se voleva replicarlo,
> o fare un backup, se ne occupava automaticamente il db, ma non c'e'
> stato verso di farglielo capire.
> Pensate se per esempio ci sono due cartelle per due clienti che si
> chiamano "Mario Rossi".
> Ne viene un casino.
> Mi sta facendo impazzire con comportamenti non standard, tipo vuole
> pulsanti sulle intestazioni delle colonne, deve selezionare con il
> tasto destro, ecc ecc...
> In ogni modo ti ringrazio del suggerimento.
>

allora ritornando al principio che devi fare??

NO replicare in una pagina web il contenuto di una directory
NO gestione DMS dove leggere/scrivere documenti catalogati e indicizzati
NO leggere/scrivere tramite php una directory del SERVER

quando nel post precedente dici

"
Quasi.
In poche parole ho una pagina web che mi mostra una tabella di
clienti, e a fianco vorrei poterci mettere, per ogni cliente, un link
da cliccare per aprire la cartella dedicata ad ogni singolo cliente.
Cartella da aprire per poi poterci copiare tutti i documenti inerenti
quel singolo cliente.
"

spero che tu non voglia aprire gestione risorse (o un qualsiasi file
manager) puntantola sulla cartella.

fammi capire

Ciao

Piero

unread,
Mar 18, 2013, 1:30:17 AM3/18/13
to
On 17 Mar, 18:53, bramante <valmirkoTOGLIMAIUSC...@tiscali.it> wrote:

> spero che tu non voglia aprire gestione risorse (o un qualsiasi file
> manager) puntantola sulla cartella.
>
> fammi capire
>
> Ciao

E' proprio quello che sono COSTRETTO, e sottolineo *COSTRETTO* a fare
dal cliente.

bramante

unread,
Mar 18, 2013, 4:36:20 AM3/18/13
to
e cosa c'entra php che lavora a livello server, quando a te serve aprire
un programma sul pc client e farlo puntare su una directory remota??

tra l'altro non pu� esserti di aiuto neanche javascript perch� non pu�
vedere i processi al di fuori del browser. l'unico modo da un browser
per interagire con il pc/mac/linux per far lanciare i processi locali �
silverlight o flash.

Ciao

bramante

unread,
Mar 18, 2013, 4:38:59 AM3/18/13
to
e aggiungo plugin java

Ciao

Piero

unread,
Mar 18, 2013, 5:29:03 AM3/18/13
to
On 18 Mar, 09:36, bramante <valmirkoTOGLIMAIUSC...@tiscali.it> wrote:

> e cosa c'entra php che lavora a livello server, quando a te serve aprire
> un programma sul pc client e farlo puntare su una directory remota??

> tra l'altro non può esserti di aiuto neanche javascript perchè non può
> vedere i processi al di fuori del browser. l'unico modo da un browser
> per interagire con il pc/mac/linux per far lanciare i processi locali è
> silverlight o flash.
>
> Ciao

Hai ragione, ma mi serve comunque dal lato server per far sapere
all'utente il nome della cartella (nel caso di omonimia) e
indirizzarlo, tipo facendo uscire fuori una pagina con un link "ecco
questa e' la cartella da aprire", e speravo che, giocando con i
permessi (tanto posso fare tutto), potessi aprire una cartella sul
server.

bramante

unread,
Mar 18, 2013, 5:52:01 AM3/18/13
to
Il 18/03/2013 10:29, Piero ha scritto:

> Hai ragione, ma mi serve comunque dal lato server per far sapere
> all'utente il nome della cartella (nel caso di omonimia) e
> indirizzarlo, tipo facendo uscire fuori una pagina con un link "ecco
> questa e' la cartella da aprire",

questo lo farei semplicemente su db, nel senso che una volta creata la
cartella su server associo quel path ad un campo sul db, ad esempio
tabella cliente:
- id_cliente
- directory_lavoro
- ecc

> e speravo che, giocando con i
> permessi (tanto posso fare tutto), potessi aprire una cartella sul
> server.
>

qui non riesco a capire, ammesso e concesso che sia possibile (possibile
ma devi giocare con apache, con php, con i permessi, e le sessioni e non
so quant'altro), apriresti gestionre risorse su SERVER (perch� php e i
processi collegati sono su server) ,non certo sul pc client (a questo
punto che ci fai??), puntantola tra l'altro alla cartella LOCALE del
SERVER,

al massimo puoi fare quello che di solito fanno i browser che associano
ad un particolare file il relativo programma da aprire. come quando un
.pdf si apre direttamente acrobat reader, o un .xls apre excel, un mpg
ti apre il lettore multimediale e cos� via, ma � un problema del Browser
non certo di php.

tra l'altro i permessi r/w sono del sistema server, php non c'entra una
beata fava.

Ciao

Quasimodo

unread,
Mar 18, 2013, 6:20:27 AM3/18/13
to
Il 18/03/2013 10.29, Piero ha scritto:
> Hai ragione, ma mi serve comunque dal lato server per far sapere
> all'utente il nome della cartella (nel caso di omonimia) e
> indirizzarlo, tipo facendo uscire fuori una pagina con un link "ecco
> questa e' la cartella da aprire", e speravo che, giocando con i
> permessi (tanto posso fare tutto), potessi aprire una cartella sul
> server.

Stackoverflow e soci sono una vera miniera:
http://tinyurl.com/c4q6qof

0 new messages