Visualizzatore di file di una cartella
Author: Michele M.Questo Topic è correlato ad un altro aperto in precedenza, ma il fine è cambiato per cui penso sia giusto aprirne un altro. La mia necessità è questa: all'interno di un sito ho la cartella public che contiene alcune cartelle (ognuna con file e sottocartelle) che dovrei aprire da una voce di menu specifica (quindi una per ogni cartella), per poi poter navigare nella cartella ed aprire o scaricare i file contenuti, senza poter risalire nella root. Dopo moltte ricerche ho trovato questo script:
https://sourceforge.net/projects/dir-list/
Il suo uso è quello tipico, bisogna caricare la cartella "dirLIST_files" ed il file index.php all'interno di quella da gestire. Al pulsante di menu associo un comando tipo
<script>window.location = "http://www.michelemenniti.altervista.org/HV/public/esempio/index.php";</script>
Il problema è che in questo modo il file manager viene eseguito nel browser e non all'interno della pagina del sito.
Impostando la pagina di menu come php e copiandovi il contenuto del file index.php otterrei il risultato desiderato (l'ho provato nella root del sito), quindi mi servirebbe capire come entrare nella cartella desiderata PRIMA di eseguire tutto il resto.
Speravo di cavarmela mettendo come prima riga l'istruzione:
chdir("public/esempio/");
con la quale mi funziona lo script, però perdo tutta la grafica.
Per capirci chiaramente vorrei ottenere questa visualizzazione:
http://www.michelemenniti.altervista.org/HV/vg.php
ma con la sua grafica completa come si vede qui:
http://www.michelemenniti.altervista.org/HV/public/esempio/index.php
...per il fatto che non si vede la grafica ... è perchè non hai messo sul tuo sito le immagini abbinate...
ad esempio questa:
/icons_large/folder.png
devi esportare con ftp esterno tutte le immagini dello script che usi e metterle nella cartella dove le cerca...
Author
Ciao Claudio, grazie, in realtà l'ho esportata la cartella, infatti se lancio direttamente il file index.php mediante il semplice comando che ho indicato sopra, funziona tutto, ma non all'interno della pagina del sito come vorrei.
Il problema è quello che dici, il problema è che se il contenuto del file index.phg lo metto nella mia pagina non trova la cartella e non mi mostra le icone e tutto il resto.
Author
Credo di aver risolto, in pratica il mio comando chdir è importante, la cartella con i contenuti dello script va messa nella root del sito, il file index.php ovviamente non va pubblicato. Non funziona benissimo perché, p.es. non appare la tavolozza dei colori, ma in realtà diverse funzioni di quella maschera non mi servono, ed ho scoperto che c'è un file config.php che mi permette di disabilitarle.
Ora faccio un po' di prove, eventualmente scrivo per aggiornamenti.
Author
No, con la manovra descritta risolvo il problema della grafica ma perdo i link ai file.
Author
Il risultato massimo che sono riuscito ad ottenere è questo:
http://www.michelemenniti.altervista.org/HV/public/esempio/index.php
con la maschera esterna alla grafica del sito.
Oppure questo:
http://www.michelemenniti.altervista.org/HV/vg.php
che però mostra l'intero contenuto del sito. Se in questa condizione clicco su public e poi su esempio, ottengo esattamente ciò che vorrei ottenere cliccando da home page sul pulsante VG, solo che ovviamente non devo avere la possibilità di risalire nella root HV e nemmeno in public, devo poter solo entrare nelle sottocartelle
Io credo che andrebbe modificato il contenuto del file index.php in modo che esso operi direttamente nella cartella HV/public/esempio e non a partire direttamente dalla cartella HV. Questo perché il contenuto del file io devo necessariamente metterlo in una pagina del sito se voglio vedere la grafica attorno alla maschera
Qualcuno può aiutarmi?
Allego lo zip con lo script
... non mi pare, ...vedo solo questa lista:
ese2 6.05 MB 08 July 2018
20180709.doc 26.5 KB 08 July 2018
20180709.mp3 6.03 MB 08 July 2018
20180710.doc 26.5 KB 08 July 2018
20180710.mp3 6.01 MB 08 July 2018
20180711.mp3 6.03 MB 08 July 2018
index.php
.
Author
Ciao KolAsim, è vero, ieri mattina finalmente ho risolto almeno questo primo problema; in pratica (anche se ancora ci sono file spuri come quell'index.php che vedi e che va tolto) la cartella dello script va caricata nella root del sito, e nel file config.php, che è in questa cartella, va impostato il percorso da mostrare, mentre il contenuto del file index.php va copiato in una pagina php associata al pulsante
Il risultato è quello che vedi, purtroppo permandono ancora problemi di percorsi: p.es. se clicco sulle intestazioni dei campi per cambiare l'ordinamento, il comando viene eseguito ma poi il sito torna sulla home page; lo stesso avviene più o meno con tutti gli altri comandi (colore, lingua, switch, ecc.) ma questi conto di disattivarli perché non mi servono.
Altro problema che devo affrontare è quello di dover gestire più cartelle, spero di risolvere creando delle cartelle dirList2-3-4 e cambiando il puntamento ai file config.php e functions.php nelle righe contenute nel file index.php. Appena riesco a mettermi di nuovo sul programma faccio le prove e aggiorno questo Topic.
Grazie.
... potrebbe già andar bene così...
... per caso, non hai provato lato server con ".htaccess", che io preferisco, ... e che ti avevo suggerito tempo addietro...?...
... sarebbe immediato e puoi anche escludere dei files dalla lista...
... oppure mi sembra di ricordare dai tempi che sperimentavo, che questo PHP (con esclusione files) mi era apparso abbastanza semplice e flessibile: https://github.com/halgatewood/file-directory-list (tra i tanti script reperibili); ...provalo; per averlo annotato si vede che mi era sembrato interessante e facile...
ciao
.
Author
Ciao KolAsim e grazie come sempre per i tuoi suggerimenti; rispondo con ritardo perché sono stato incasinato col lavoro.
- In realtà ora va benissimo perché ho risolto tutto, infatti ora posso gestire più pagine, ognuna in modo separato e non ho più comportamenti anomali
- il file .htaccess io non lo trovo nel sito e quindi non ho approfondito
- lo script che mi hai linkato è bellissimo dal punto di vista grafico e mi tornerà molto utile per un altro lavoro ma, in questo caso, a regime dovrò visualizzare centinaia di file in una cartella quindi il metodo ad elenco con le icone piccoline mi sta benissimo.
In realtà ora ho ottenuto quello che desideravo, e cioè il servizio che avevo prima ma all'interno delle pagine del sito.
L'unica cosa che devo trovare ora è il modo di cambiare i colori del testo, perché nella combinazione che ho scelto le scritte si vedono poco niente; ho già localizzato i file, devo fare un po' di prove, ma il più è fatto.
Sperando che non escano poi problemi di altra natura nell'uso definitivo...
Grazie ancora.
... provare per provare, prova questa stringa di codice:
<style> table td {color: red !important; font-size:16px;} </style>
... da incollare nelle Proprietà della Pagina | Pannello Esperto | Codice personalizzato | opzione - Prima della chiusura del TAG HEAD
ciao
.
Author
Sìììììììììììììì, in un colpo solo mi hai risolto anche la necessità di aumentare le dimensioni del font e delle icone, così è perfetto! Ti mando mille benedizioni, non chiudo ancora il Topic perché fino a quando sostituito tutto potrebbe uscire qualche altro problemino.
... speriamo di no! ...e buon lavoro......
Author
Come dicevo in precedenza sono arrivato al risultato che desideravo, mi restano al momento un paio di cose che vorrei fare in quel file manager che ho adottato:
1 - allineare i nomi dei file a sinistra
2 - aggiungere (ma questo è secondario) un'icona per il download ed una per l'apertura del file nel browser, in modo che l'utente possa scegliere se prendersi il file o visionarlo/ascoltarlo direttamente nel browser. Attualmente i file di testo vengono scaricati e quelli audio aperti, senza possibilità di scelta.
Ma, ripeto, la cosa importante è allineare i file a sinistra, centrati sono inguardabili:
http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php?folder=OTUuVkFOR0VMTy5BR09TVE8uMjAxOA==
Ho provato nel file index.php associato alla pagina a sostituire tutti gli align=center in align=left ma senza ottenere risultato, poi ho aggiunto align_text=center nelle proprietà "esperto", nella riga suggeritami da KolAsim, così:
<style> table td {color: black !important; font-size:16px; align_text: left;} </style>
ma con questo sistema ottengo solo di vedere tutta la tabella a sinistra al di fuori del riquadro della pagina, mentre i testi rimandono comunque centrati.
Cosa sto sbagliando?
Author
Ricordo che il file manager che sto usando è scaricabile da qui:
https://sourceforge.net/projects/dir-list/files/dir-list/dirLIST%20v0.3.0/dirLIST_0.3.0_with_upload_fix.zip/download
Author
Domanda riguardo il Forum: ma non esiste la possibilità di editare un post già pubblicato?
Comunque ho capito che la centratura è frutto di un calcolo e non di un comando, quindi non è cosa intervenire in tal senso; quindi ho inserito la riga
echo '<div style="text-align:left">';
subito prima della visualizzazione dell'icona ed ho ottenuto quello che cercavo.
Quindi ora posso occuparmi del secondo punto del mio primo post di oggi, quindi ovviamente sono ben accetti suggerimenti, io intanto sperimento....
... prova a correggere align_text: left; ... in così: align-text: left;
...!... noto che hai inserito codice errato nella pagina, con TAG <HTML> <HEAD> <BODY> che non devono essere presenti, se non solo quelli univoci generati dal programma, e che portano errori nel codice...!...
... prova ad eliminare il surplus posizionando in ESPERTO | /HEAD i codici che vanno in HEAD, eccetera...
... forse potresti provare a produrre la pagina PHP indipendente dal progetto, e poi importare questa stessa in un IFRAME; ...e forse semplificheresti di molto...
.
Author
Grazie KolAsim! il trattino basso lo avevo messo per errore, come ho scritto nell'ultimo intervento ho risolto posizionando in due punti "strategici" del codice la riga echo '<div style="text-align:left">';
Una mi allinea le cartelle e l'altra i file contenuti in esse, quindi tutto OK.
Per il resto ti assicuro che non ho aggiunto proprio niente, non sarei in grado...
Ora funziona tutto almeno per questa parte dell'allineamento.
Magari più avanti tornerò alla carica per modificare le singole righe per aggiungere la possibilità di scegliere tra apertura e download del file.
Approfitto per una domanda: perché in locale le pagine php non funzionano ed esce invece il testo in esse contenuto? Forse dipende dal codice errato a cui ti riferisci o forse devo installare l'ambiente PHP sul mio PC?
Grazie ancora.
... il codice PHP può essere interpretato solo in rete su server PHP; ...oppure per esperti su server locale installato nel PC, EasyPHP, XAMPP, eccetera....
... prova come detto prima a pubblicare la pagina PHP indipendente; ...praticamente, del codice che hai incollato, dal codice <!DOCTYPE html...ECCETERA ......ad </HTML> di chiusura ...
ciao
.
Author
Sono andato a controllare, ma io non trovo traccia di ciò che dici; ho creato un oggetto HTML per ogni pagina associata al file manager, e ho attivato il php; nella sezione esperto c'è solo la riga che mi hai fornito tu, che mi ha permesso di agire facilmente sulla formattazione del testo della tabella sottostante, mentre la pagina html/php inizia così:
<?PHP
/*
+-----------------------------------------------------------------------------------+
| |
| dirLIST - PHP Directory Lister Version 0.3.0 |
| Copyright © 2009 Hamdiya |
| Support:*** |
| |
| dirLIST is free software; you can redistribute it and/or modify |
| it under the terms of the GNU General Public License as published by |
| the Free Software Foundation; either version 2 of the License, or |
| (at your option) any later version. |
| |
| This program is distributed in the hope that it will be useful, |
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| GNU General Public License for more details. |
| |
| You should have received a copy of the GNU General Public License |
| along with this program; if not, write to the Free Software |
| Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| |
+-----------------------------------------------------------------------------------+
= = = = = = = = = = = = = = = = = = = = = = = = = =
U S E R C O N F I G U R A T I O N
= = = = = = = = = = = = = = = = = = = = = = = = = =
You can start by placing this file and the accompanying dirLIST_files folder
in the directory you wish to display and you should be all set. If you want,
you can change a few settings in the 'dirLIST_files/config.php' file for
further customisation.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
U S E R C O N F I G U R A T I O N - D O N E
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
*/
error_reporting(0);
set_time_limit(0);
session_start();
...................continua
quindi direttamente con codice PHP, cioè non ho fatto altro che copiare il contenuto del file index.php scaricato dal link del file manager, ed incollarlo nell'oggetto html.
Se faccio l'ispezione della pagina on-line vedo anche io codice HTML ma è generato dal programma:
<!DOCTYPE html><!-- HTML5 --><html prefix="og: http://ogp.me/ns#" lang="it-IT" dir="ltr"><head><title>Vangelo del Giorno - Homilyvoice</title><meta charset="utf-8" /><!--[if IE]><meta http-equiv="ImageToolbar" content="False" /><![endif]--><meta name="author" content="Michele Menniti" /><meta name="generator" content="Incomedia WebSite X5 Professional 16.1.1 - www.websitex5.com" />
...................continua
Tempo fa (alcuni anni) scaricai XAMPP e lo installai sul PC, poi ho cambiato macchina e l'ho abbandonato, pensi che potrei cimentarmi di nuovo per risolvere questa cosa? Non ricordo di aver chiesto aiuto a suo tempo, ma magari ora non ricordo più niente. Intanto lo cerco e los carico e poi vediamo se è cosa, è snervante dover pubblicare il sito per ogni minima prova.
... se apri la tua pagina con Firefox ed azioni Ctrl+U ...vedrai il codice sorgente con gli errori evidenziati, assolutamente da evitare...
... dovresti fare come ti avevo detto precedentemente, senza TAG <HTML> <HEAD> <BODY>...
... oppure come detto appresso, pubblicare la pagina (o le pagine) PHP indipendente e funzionante, da importare poi nel progetto con codice IFRAME, che per me semplificherebbe il tutto...
... se ti interessasse, fai una prova a pubblicare la sola pagina PHP e posta qui il LINK...
.
Gli errori che ti ha evidenziato KolAsim nascono dal fatto che hai incollato il codice della pagina index del filemeneger che hai scaricato.
Ora questa pagina è stata fatta per essere funzionante da se stessa quindi con tutti i tag html comprese (head, body ecc.)
Prima di incollarla dovresti cancellare quel codice...
esempio
poi questo
poi questo
Ciao
Author
Perdonatemi entrambi, fino a sabato sono fuori sede e con la connessione internet che ho riesco a malapena a rispondervi.
1 - Ho provato ad eliminare dalla pagina tutto ciò che mi ha indicato Giorgio, ma l'errore non solo resta in simulazione locale ma ora appare anche on-line, e sono sicuro di non aver fatto errori, probabilmmente non ho capito qualcosa.
2 - ... prova come detto prima a pubblicare la pagina PHP indipendente; ...praticamente, del codice che hai incollato, dal codice <!DOCTYPE html...ECCETERA ......ad </HTML> di chiusura ... Facendo così però se eseguo la pagina mi da errore:
http://www.michelemenniti.altervista.org/HV/indice2.php
3 - Poi ho pubblicato la pagina completa direttamente, come mi ha consigliato KolAsim, qui:
http://www.michelemenniti.altervista.org/HV/indice.php
se la lancio dal browser funziona però non la vedo all'interno della grafica del sito e non è quello che voglio, tornerei al vecchio sistema in questo modo. Comunque se ho capito ora dovrei sostituire il contenuto della pagina originale con una istruzione iframe per eseguire questa pagina indice.php.
Non ho firefox e dovrei scaricarlo ma anche Chrome mi permette di vedere il sorgente html, ma forse non è sufficiente.
Vi chiedo di avere la pazienza di fornirmi istruzioni "for dummy", non mi offendo di certo!
Allo stato attuale per quanto mi riguarda funziona tutto, vorrei solo poter vedere le pagina in simulazione off-line perché devo apportare altre modifiche e ogni volta mi tocca pubblicare il sito.
Naturalmente capisco che sto commettendo degli errori che mi piacerebbe eliminare, ma non avendo le necessarie competenze per mettere mano al codice ho bisogno di indicazioni come quelle di Giorgio, solo che o devo eliminare altro o ho capito male io.
Grazie.
l'errore é dovuto a qualcosa di cancellato di troppo o troppo poco (magari anche una mia indicazione sbagliata....)
Tieni presente che quella pagina che é inserita é un esempio dimostrativo funzionante senza bisogno di altro e mischia codice html con codice php per dare funzionalitá.
Quindi non puoi incollare tutto il codice nell'oggetto html, ma devi ripulirlo almeno dei tag body e header.
Era questo l'intento che volevo proporti.
Ora non ho sottomano il computer, ma un errore del codice php lo vedi solo nel sorgente in quanto il server lo interpreta e lo trasforma in html: per questo bisogna pubblicarlo per testarlo....
Prova a copiare il codice presente adesso nel blocco note(Quello che da errore) salvalo (anche come .txt) e allegalo.
ciao
... purtroppo non sei stato attento a quanto ti avevo anticipato e replicato anche da Giorgio; poco male, puoi sempre riprovarci:
... dovresti fare come ti avevo detto precedentemente, senza TAG <HTML> <HEAD> <BODY>...
... ... ...
=============================
... se ti interessasse, fai una prova a pubblicare la sola pagina PHP e posta qui il LINK...
... ... rispetto a questi due suggerimenti, adesso che hai prodotto la pagina PHP indipendente come richiesto, puoi provare ad usare il mio IFRAME_ELASTICO, e potresti risolvere all'istante nel migliore dei modi, forse!!!......
... anche se io non ho il programma!!! ...quando sarai disponibile per le prove, se non ci sei prima, per SABATO prossimo, fatti risentire, stando al passo se ci incontriamo nella stessa fascia oraria, che ti fornirò tutti i dettagli, e forse si potrebbe risolvere con un solo copia/incolla, semplicissimo...
... salvo imprevisti potrei intercettarti e risolvere in breve...
... ovviamente lascia attiva la pagina PHP indipendente che hai postato prima...
...
... se nel frattempo risolverai nel modo ordinario anticipato nei precedenti post, che ben venga e nel caso si vedrà...
.
OK prova a incollare il codice che ti ho postato, dovrebbe essere senza errori.
Ciao
Author
@ Giorgio: ok, faccio il test appena possibile.
@ KolAsim: non è che sono disattento, semplicemente non ho le conoscenze per fare quello che mi suggerisci; riferendomi alle tue 4 precedenti citazioni:
1 - prova ad eliminare il surplus.... ecco il fatto è che io non sono in grado di capire cosa serve e cosa posso togliere, se elimino ciò che sta tra i tag "body" praticamente non mi resta più nulla nel codice, quindi è chiaro che non capisco io cosa togliere; ora che questo lavoro lo ha fatto Giorgio sono sicuro che funzionerà, appena faccio la prova Vi aggiorno.
2 - Firefox: ti dicevo che con la connessione internet che ho al momento (Edge, ed anche a tratti, in montagna) non riuscirei MAI a scaricarlo, quindi devo aspettare sabato mattina, quando sarò a casa per poter fare ciò che mi suggerisci.
3/4 - IFRAME & IFRAME ELASTICO: anche qui non è che sappia bene ciò di cui stiamo parlando, però ricordo di aver usato il comando base in un vecchio progetto e quindi penso di poterlo replicare, ma sollevavo il dubbio che se in questo modo la pagina venisse eseguita al di fuori della grafica del sito non mi servirebbe.
Sabato mattina dovrei essere operativo a casa verso le 10-10.30 e fino alle 13, quindi se ci sei mi potrai dare una mano passo-passo.
Grazie ad entrambi per la pazienza che state dimostrando, ma è proprio ciò di cui ho bisogno, a me la buona volontà non manca e infatti alla fine ho trovato le piccole soluzioni che mi servivano, ma questa cosa dell'HTML/PHP va oltre le mie competenze e questi non sono linguaggi che si inventano o si apprendono in un niente.
... quello che ti avevo detto mi pareva chiaro su quei tre tag di pagina che devono essere univoci, assolutamente niente di difficile; ...ed avendo tu usato il PHP, più impegnativo ed avanzato, ho pensato che almeno le basi elementari HTML le conoscessi......
... comunque niente di male, ed adesso per sfizio, (.3./4), visto che editando online non ho avuto inceppamenti col server, ho replicato in HTML il tuo PHP indipendente, ed applicato al mio codice x IFRAME_ELASTICO; ...ho anche reso elastica la tabella del PHP, che quella tua non lo è, essendo fissa e poco adatta come si vede nel tuo esempio...
... così intanto puoi >> vedere il risultato (temporaneo!!!; si estinguerà dopo un tot di ore!), ...che puoi valutare per renderti l'idea, e volendo con Ctrl+U studiarlo ed nel caso iniziare a replicarlo; ...lo sfondo rosso serve solo per evidenziare l'IFRAME, e l'area circostante bianca rappresenterebbe il contenuto vero del sito in cui verrebbe inserito...
... casomai per chiarimenti quando possibile fatti risentire e/o a sabato salvo imprevisti...
(cogli l'attimo!)
.
Author
@ Giorgio: test fatto, on-line si vede bene ma off-line continuo a vedere solo parolacce estrapolate dal codice.
@ KolAsim: mi spiego meglio, non ho usato il PHP, ho delle conoscenze che mi derivano dal vecchio Basic e seguenti, e avendo davanti il codice PHP ho compreso alcune cose e sono riuscito a modificarle secondo le mie esigenze, ma poca roba, HTML niente, parli di univocità quindi evidentemente sono riportati più volte, ma a questo punto, visto il tuo esempio, CARPE DIEM eccome! (il Latino lo conosco ); mi hai fatto ridere di cuore con la cosa dell'estinzione alla Ethan Hunt (Mission Impossible...questo messaggio si autodistruggerà in 5 secondi!) comunque la cosa mi interessa moltissimo soprattutto per il responsive, infatti mi stavo rassegnando al fatto che la maschera si potesse vedere solo usando le barre di scorrimento, invece così, se ho ben capito, si vedrà comunque nel sito e si adeguerà alle dimensioni della visualizzazione. GRANDIOSO!
Quindi l'aiuto mi serve eccome perché io non saprei come inserirlo nel mio oggetto HTML/PHP, ovviamente il rosso lascerà il posto allo sfondo attuale (celeste), i due campi size/date saranno in nero, il resto è perfetto.
A questo punto oso.... ciò che vorrei aggiungere per completare la mia idea, sono due icone sulla sinistra dei nomi dei file, una che mi permette di avviare il download e l'altra che mi permette di aprire il file nel browser; mi andrebbero bene anche due pulsanti testuali, magari colorabili per distinguerli ad occhio oltre che con il testo. Attualmente cliccando sul nome i file audio si aprono nel browser e quelli doc vengono scaricati, ma non so perché, cioè non so se dipende dalle impostazioni del mio browser Chrome oppure dal file manager; in ogni caso al momento devo gestire solo queste due estensioni di file. Se questa aggiunta è fattibile senza particolari problemi ti sarei gratissimo se mi aiutassi, in caso contrario saprò farmi bastare questa versione. A dir la verità il vecchio file manager aveva un pulsante unico "apri/scarica", quindi deduco che la cosa non sia gestibile ma automatica, sbaglio? Al limite lo metterei comunque per quelli che da anni sono abituati al vecchio sito, che poi è ancora in linea.
Come vedi piccole prove posso farle, anche a pubblicare la singola variazione di pagina, ma se devo muovere molti kB diventa un guaio; sabato da casa invece potrò muovermi a piacimento, ai tuoi ordini!
Grazie.
... OK ... a sabato ...
... intanto copia/incolla >> questo codice (temporaneo!) in un Oggetto Codice HTML, e prova dopo aver esportato in RETE...
... secondo me >> questa tua pagina PHP dovresti fare in modo che si avvii con directory aperta, come il tuo primo esempio...
... invece, per rendere la tabella della pagina PHP elastica, nella sezione prima della chiusura del TAG /HEAD incolla questo mio codice:
<style>
table td {color: brown !important; font-size:18px;}
table {word-break: break-word}
* div, table {width:100% !important}
</style>
... più semplice del semplice, ed avresti cosi anche già fatto...
.
Author
Ciao, sono riuscito ad applicare i tuoi suggerimenti. Queste sono due pagine con il file manager lanciato dal tuo codice e con l'IFRAME_ELASTICO:
http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php
http://www.michelemenniti.altervista.org/HV/novita.php
Mentre questa non c'è verso di vederla funzionare, eppure è uguale alle altre e non capisco dove sbaglio; considera che in realtà avevo impostato tutte le nove maschere col tuo sistema, ma siccome questa non funzionava, ho ripreso il precedente progetto (quello che funzionava ieri) e ho ricominciato, perché questa era l'ultima, e avevo il dubbio di una limitazione; ora invece l'ho caricata come terza lasciando le altre col vecchio sistema e non va lo stesso:
http://www.michelemenniti.altervista.org/HV/catechesi.php
Peraltro il menu cerca sempre la pagina .html anche se è una .php, e ovviamente non la trova. Ho provato a pubblicare tutto il sito e cancellare i dati di navigazione, ma ogni volta ci vuole mezzora e comunque non cambia niente.
Mi sta facendo impazzire...
Author
Risolta la questione della chiamata pagina php con una nuova pubblicazione, dopo aver liberato spazio su Altervista. Ma la pagina continua a non funzionare...
... non ho capito del menu su pagina html...
... la pagina con il codice iframe potrebbe essere anche .html, non per forza .php, anche se possibile e se non servisse per altri motivi...
... vedo che sei già a buon punto, e vedo anche che hai applicato correttamente la tabella elastica...
... invece. per poter attivare ed apprezzare la potenza del mio IFRAME_ELATICO, la directoy della lista files dovrebbe essere già aperta, come nel tuo primo esempio, cui mia pagina replicata, altrimenti verrebbe vanificato il codice...(*)
(*) - altrimenti basterebbe un semplice e dignitoso IFRAME normale, ... che puoi provare al posto di tutto il codice precedente sostituendolo con questa semplicissima stringa di codice:
<iframe src="http://www.michelemenniti.altervista.org/HV/indvdg.php" width="100%" height="400" ></iframe>
... all'Oggetto Codice HTML che conterrà il codice, assegnerai l'altezza di 410 pixel...
... molto più semplice che implementare il codice PHP nella pagina, sia con IFRAME elastico che normale; ...prova; ...è la soluzione che preferisco, da sempre...
.
Author
Non avevo capito cosa significava "la directoy della lista files dovrebbe essere già aperta", ora credo di sì. Mi spiego: ogni sezione (voce di menu) a regime contiene sia file che cartelle, qui in alcuni casi vedi solo cartelle da aprire, ma è solo perché non ho spazio, quindi il tuo codice sarà utilissimo; i file vengono pubblicati con periodicità settimanale ed i più vecchi vengono spostati nelle cartelle che fanno da archivi "annuali", quindi il problema non si pone per cui credo non valga la pena di fare la prova che mi suggerisci, o ho capito male?
Il guaio vero è che il sistema precedente mi permette di vedere tutte le sezioni, mentre se adotto il tuo suggerimento incredibilmente quella sezione non funziona e, credimi, è quella e nessun'altra, se io dalla voce di menu "catechesi" eseguo un'altra qualsiasi maschera php (indvdg, indnov2, ecc) si apre), quando invece eseguo indcat9 succede quello che vedi; ho provato a cambiare il nome della voce di menu ed anche quello della cartella, e perfino i contenuti, se ripristino il vecchio sistema si mette a funzionare, ti assicuro che sembra una stregoneria! Domani faccio altre prove strane, del tipo che elimino tutte le sezioni e lascio solo quella col tuo codice, e vediamo che succede, ma non capisco davvero che problema ci sia!
Le pagine le ho provate php o html e funzionano, questa era l'ultima prova legata alla speranza di risolvere questo problema, ma niente. Poi alcune delle sezioni saranno protette da password e quindi diverranno automaticamente php.
... non posso entrare in merito al PHP che dovrai cercare di configurare tu, ...ma io vedo ancora così:
... salvo questo, per l'iframe elastico (che non si può valutare!) e la tabella php, dovresti essere a posto, ...con 4 giorni di anticipo...
.
ciao
Author
Si, se risolvo l'ultimo problema sono a posto.
Per valutare l'IFRAME_ELASTICO basta cliccare sulla cartella e si apre le'elnco dei file, almeno io questo vedo.
Ora provo a risolvere la questione di questa pagina che mi sta facendo disperare:
http://www.michelemenniti.altervista.org/HV/catechesi.php
Più tardi aggiorno...
Non per fare l'antipatica ma c'è un piccolo problema: se si clicca sulle voci per l'ordinamento (Name, Size, Date Upload) la pagina viene caricata dentro l'iframe.
Non ho avuto modo di riprodurre il tutto ma forse aggiungendo target="_parent" a quei collegamenti si risolve:
<a class="sort" target="_parent" href="dirLIST_files/sort.php?by=name&folder=">Name</a>
Author
Ciao, ma quale antipatica? Ogni suggerimento è ben accetto, sto facendo un miliardo di prove ma incredibilmente non riesco a risolvere il problema con una delle nove sezioni.
Purtroppo sembra una strana incompatibilità, ma devo esserne cereto prima di tornare alla versione precedente.
Peraltro mi pare di capire che l'IFRAME_ELASTICO funziona in presenza di soli files, situazione che io non avrò mai, perché ci saranno sempre delle cartelle archivio, e se KolAsim mi conferma questa cosa sono costretto ad abbandonare il suo eccellente codice perché effettivamente non lo vedrò mai funzionare.
Tengo da parte il tuo suggerimento per la situazione finale. Grazie per ora.
... confermo, come detto in precedenza: la pagina/directory deve essere già estesa; ...quindi puoi semplicemente usare l'iframe normale del precedente codice postato, che avrebbe lo stesso aspetto/effetto di adesso, e senza complicazioni...
... ho provato i LINK detti da stesil, ed infatti sarebbe da provare il target "_parent" o "_top" come è stato anticipato...
... non ricordo in quali situazioni dei miei esperimenti (persi) accadesse, ma ricordo che in alcuni casi dovevo forzare il target aggiungendo un ulteriore codice in HEAD della pagina importata, questo:
<base target="_parent">
... basta provare il primo suggerito da stesil, e nel caso aggiungere dopo il tag base...
.
Author
Ho risolto con la versione "semplificata", ora si vede tutto correttamente, ma senza l'IFRAME_ELASTICO
Non ho ancora provato la modifica target "_parent" di stesil o l'altra da te suggerita, ma ho al momento un dubbio:
« <iframe src="http://www.michelemenniti.altervista.org/HV/indvdg.php" width="100%" height="400" ></iframe>
... all'Oggetto Codice HTML che conterrà il codice, assegnerai l'altezza di 410 pixel... »
Considerando che in alcuni casi mi trovo a visualizzare anche sessanta file non sarebbe preferibile impostare l'altezza automatica, per evitare di dover usare la barra di scorrimento veritica che, soprattutto, nel responsive, potrebbe risultare fastidiosa da usare?
Ho provato la cosa su alcune pagine e non mi pare di vedere controindicazioni, ma magari mi sbaglio.
... l'altezza dell'oggetto contenitore dovrebbe essere congrua allo sviluppo verticale dell'iframe...
... l'altezza automatica gioverebbe con l'iframe elastico...
... se all'iframe viene assegnata una altezza inferiore al suo sviluppo verticale, come hai già potuto notare, si attiverà la propria barra di scroll verticale...
... se all'oggetto contenitore dell'iframe si assegna una altezza inferiore a quella assegnata all'ifrane anche in questo si attiverà la barra di scroll verticale...
... nel caso venissero a combinarsi le due situazioni, si presenterebbero due barre di scroll affiancate, una dell'iframe ed una dell'oggetto html...
... con una semplice prova te ne renderai conto all'istante usando misure inferiori...
.
Author
OK, chiaro, ho fatto le prove e ho capito il meccanismo, dopo la pubblicazione cercherò la migliore combinazione in base alla presenza dei file nelle singole sezioni.
Invece ho messo mano al sort. In effetti se lo uso sulla pagina principale della sezione mi dà:
La pagina http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php?folder= non è presente.
se apro la cartella 2018 e cerco di ordinare i file ottengo:
La pagina http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php?folder=OTUuVkFOR0VMTy5BR09TVE8uMjAxOA== non è presente.
modificando la relativa pagina indvdg.php con l'aggiunta del target="_parent" (o _top) come mi avete suggerito non noto alcuna differenza, anche aggiungendo la riga
<base target="_parent">
nelle prime righe subito sotto <head> (oppure nella riga precedente a </head> non cambia niente.
Posso tentare altro o sto sbagliando qualcosa di ciò che mi avete suggerito?
Author
Ho visto il sito di stesil e ho trovato questa soluzione:
http://quellidelcucuzzolo.blogspot.com/2016/05/php-elenco-file-dinamico-ordinabile.html
che mi andrebbe benissimo, magari potendo cambiare il nero in una tonalità di blu/celeste, ho creato una pagina php nella quale ho incollato il codice php/html (naturalmente modificando il nome cartella), mentre nell'head ho incollato il codice specifico. Il risultato è il pulsante di menu Vdg ma cerca vdg.script invece di php, chissà che ho combinato, poi lo guardo meglio.
Author
L'ho fatto funzionare in qualche modo, devo ancora far apparire l'icona del download, ma mi pare di capire che non visualizzi le cartelle e che non mi permetta di vedere i file .wma, pur avendo aggiunto l'estensione nel codice, quindi non va bene per i miei scopi, purtroppo.
Resta quindi da risolvere la questione dell'ordinamento con la maschera attuale, se non riesco devo proprio abbandonare tutto e ritornare al vecchio sistema.
Quindi resto in attesa di aiuti e suggerimenti. Grazie.
Author
Salve a tutti, riprendo dall'ultimo mio post utile, avendo concluso le prove con l'altro codice, che non va bene per i miei usi.
Ho messo mano al sort e per vedere gli effetti basta visitare questa pagina:
http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.html
Se clicco su "name" sulla pagina principale della sezione mi dà:
La pagina http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php?folder= non è presente.
se invece apro la cartella 2018 e cerco di ordinare i file ottengo:
La pagina http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php?folder=OTUuVkFOR0VMTy5BR09TVE8uMjAxOA== non è presente.
modificando la relativa pagina indvdg.php con l'aggiunta del target="_parent" (o _top) come mi avete suggerito non noto alcuna differenza, anche aggiungendo la riga
<base target="_parent">
nelle prime righe subito sotto <head> (oppure nella riga precedente a </head> non cambia niente.
La cosa che ho notato è che comunque il sort viene eseguito regolarmente e correttamente, solo che poi invece di mostrarminuovamente la maschera con il contenuto di partenza mi da gli errori che ho elencato sopra. Quindi in effetti mi basterebbe, credo, fornire un comando manuale per aprire la pagina, subito dopo aver eseguito il sort, perché evidentemente il frame non permette di mantenere il percorso e poi ne cerca uno inesistente.
Posso tentare altro o sto sbagliando qualcosa di ciò che mi avete suggerito?
Perché la pagina http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php
non esiste!
esiste invece la versione html
prova a cambiare nel progetto il nome della pagina in questione da html in php
Author
Hai perfettamente ragione! Modificata l'estensione sono spariti gli errori. Grazie!
Poi ho adottato questo suggerimento:
In effetti ora funziona tutto, anche se resta un piccolo inconveniente; in questo caso la pagina mostra una cartella, se la apro e poi eseguo l'ordinamento sui file che essa contiene, viene effettuato però la maschera mi riporta alla cartella "madre" ma questo vorrei evitarlo: se faccio un ordinamento di determinati file è per vedere quei file in ordine, quindi è inutile che io veda la cartella "madre" per poi dover rifare il percorso col mouse.
Ciao, no c'è qualcosa che non va ed è indipendente dal target _parent.
E' un azzardo senza vedere niente ma secondo me hai modificato il file sort.php in modo non corretto. Cosa hai scritto come destinazione dell'header location?
Perché secondo me dovrebbe essere così:
header("Location: ../indvdg.php?folder=".$folder);
e, a questo punto, non dovrebbe servire nemmeno più l'attributo target nel link.
Author
Ciao Stesil, premesso che io non ho alcuna difficoltà a postare file o codici, questo è lìintero contenuto del file sort.php:
<?PHP
//dirLIST v0.3.0 content sorting file
session_start();
$by = $_GET['by'];
$folder = $_GET['folder'];
$current_order = $_SESSION['sort']['order'];
if($current_order == 0)
$_SESSION['sort']['order'] = 1;
else
$_SESSION['sort']['order'] = 0;
if($by == "name")
{
$_SESSION['sort']['by'] = 0;
}
elseif($by == "size")
{
$_SESSION['sort']['by'] = 1;
}
else //sort by date
{
$_SESSION['sort']['by'] = 2;
}
header("Location: ../vangelo-del-giorno.php?folder=".$folder);
?>
Provando a sostituire come da tuo suggerimento:
header("Location: ../indvdg.php?folder=".$folder);
torna comunque alla pagina principale della sezione, però in questo caso addirittura mi scompare la grafica del sito.
Eliminando il target dalla sola riga di sort del nome, tutto ritorna come prima, cioè ora resta nella stessa grafica del sito ma ritorna sempre alla cartella principale. Se vuoi vedere i due diversi effetti vai alla solita pagina:
http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php
apri la cartella 95.VANGELO.AGOSTO.2018
e prova prima l'ordinamento per Nome e poi quello per dimensione o data caricamento: nel primo caso ho eliminato il target dalla riga di sort, negli altri due casi l'ho lasciato.
Ho notato che l'indirizzo sul browser non cambia navigando nelle subcartelle della sezione, vedo sempre http://www.michelemenniti.altervista.org/HV/vangelo-del-giorno.php mentre all'interno della pagina, alla voce "Indice di:", il percorso viene aggiornato regolamente, in base alla cartella in cui mi trovo, p.es.:
Indice di: Vangelo del Giorno/
Indice di: Vangelo del Giorno/95.VANGELO.AGOSTO.2018/
Indice di: Vangelo del Giorno/95.VANGELO.AGOSTO.2018/2017/
Allego i file indvdg.php, sort.php e config.php che sono quelli modificati per i miei scopi, poi ci sarebbe il functions.php ma lì ho messo mano solo per vedere le intestazioni di colonna in Italiano.
Grazie
Nel modificare i nomi hai perso per strada un pezzetto di codice PHP, quello che tiene traccia della cartella in cui si stanno visionando i file. Ti mando in allegato il codice corretto della tabella da sostituire a quello ora presente nel file indvg.php a partire dalla riga 568.
Il file sort.php è corretto così.
Ti consiglio inoltre di sostituire gli spazi presenti nel nome della cartella con dei trattini, ma vedi tu.
Ciao
Author
Fantastico! Tutto ok! In realtà avevo applicato un tuo suggerimento precedente, mi pare, ma evidentemente l'ho applicato male; ora devo replicare tutte le modifiche nelle altre 8 maschere e questo problema è risolto e posso passare ad altro...
OK, metterò i trattini al posto degli spazi a tutte le cartelle che sono composte da più parole e poi adeguerò i vari percorsi. Quando finisco tutta quetsa parte metto qui un aggiornamento.
Per il momento ti ringrazio moltissimo e ti auguro un Buon Ferragosto, che esetendo a tutti gli utenti del Forum.
Grazie!
Hai ragione! Quando ti ho risposto la prima volta non avevo scaricato i file PHP e avevo guardato il sorgente della pagina, ed è stata una leggerezza che potevo evitare.
Mi dispiace di averti fatto perdere tempo.
Buon Ferragosto anche a te
Author
Ma che dici!? Mi avete aiutato e fatto risparmiare un mare di tempo, altro che perdere! Sto aggiornando i vari file e man mano tutto si sistema, sono veramente moltosoddisfatto di questo risultato. Ciaaaooooo
@Michele , se hai risolto... e se non hai altri dubbi legati strettamente a questo ... puoi chiudere il post con "corretto" (la spunta verde) sulla risposta di Stesil che ti ha risolto il post ...
grazie.
Author
Ok Claudio, in realtà sono stati determinanti sia Stesil che KolAsim per il risultato finale, è possibile attivare due spunte verdi? Altrimenti almeno segno come utili tutti i passaggi importanti e poi chiudo con una sola spunta, è giusto che tutti coloro che mi hanno aiutato abbiano il proprio riconoscimento, anche Giorgio. Dopo la tua risposta provvedo. Grazie a te.
non puoi dare il Corretto a più persone..l'utile si....fai come credi più giusto, e chiudilo se risolto....comunque sia non si vincono soldi e nessuno si offenderà...
... ti ringrazio per avermi nominato, ... mai il mio contributo si limitava solo su una mia idea...
... la soluzione definitiva è sopraggiunta con le competenze extra di stesil, alla quale secondo me vanno riconosciute... (ogni suo intervento è una lezione, specialmente nel breve periodo estivo)
... per quanto mi riguarda, detto in altre occasioni, a me non interessa il "corretto", ... mi basta un semplice riscontro, e ben accetto se corredato da un ringraziamento come hai già fatto, niente di più, pertanto sei libero di regolarti come credi ... ciao
Suvvia ragazzi (...si fa per dire!! ) che sono tutti sti convenevoli?!? Ma spunta quello che vuoi Michele, va bene comunque!!
@kol eh, vediamo se riesco a non andare in letargo la prossima stagione!! Scherzi a parte a volte il tempo è davvero troppo poco!!
Eheheheh ! Sono io che sono fissato ! ...ma è anche una questione pratica ...
quando vedo un post aperto vado a leggerlo , e magari è già risolto...
con la mia memoria "a breve termine" , finisce che riapro lo stesso post per diverse volte ... e poi me ne sfugge un altro che invece è in attesa di soluzione...
Ciaoooo !
Author
OK, comunque sia Vi ringrazio tutti e vi aspetto negli altri Topic che aprirò, devo risolvere qualche altro problemino...