Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Con un prezzo di 2.999 euro, il Panasonic Z95BEG entra nella fascia ultra-premium dei TV OLED: pannello Primary RGB Tandem, sistema di raffreddamento ThermalFlow, audio Technics integrato e funzioni gaming avanzate lo pongono come un punto di riferimento
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-01-2008, 19:24   #1
flapane
Senior Member
 
L'Avatar di flapane
 
Iscritto dal: Dec 2003
Città: D-NRW, I-CAM
Messaggi: 8019
[php]aiuto con script che crea elenco files

Questo script
Codice:
<?
/*
se il file è nella cartella radice e vuoi fare la lista dei file di una cartella figlio devi
inserire il path, altrimenti non trova la cartella e ti da errore. Se inserisci il carattere "."
vuol dire che cercherà nella cartella dove è questo file. Se inserisci il carattere ".." cercherà nella cartella precedente, e così via come in dos.
*/

$path="c:/Programmi";

/*   
Questa è la fuzione che apre la directory. Gli va specificato il path ovvimente. La funzione restitusce un valore booleano.
*/

$dir=opendir("$path");

if($dir){

//la funzione readdir() legge i file presenti nella cartella finché non sono finiti!!
while ($file = readdir($dir)){

//controllo di non leggere i file nulli o le directory precendenti
if($file != '..' && $file !='.' && $file !=''){

echo "<A HREF=$path/$file>$file</A><br>";    //scrivo un link man mano che trovo file    
    
}//fine if

}//fine while

closedir($dir);

clearstatcache();

}//fine if

else {echo "IMPOSSIBILE aprore la directory specificata!";}// in caso di errore appare questo!

?>
crea dinamicamente una pagina php con l'elenco dei files inseriti in una cartella...
c'è modo di farli apparire in ordine alfabetico?
Si può arrivare a
Codice:
  <?php
$path="ladirectory";

$dir = opendir("$path");

if($dir){

      while ($file = readdir($dir)) {
         if($file != '..' && $file !='.' && $file !=''){
            $array_files = array("$file"); 
			natsort($array_files);

echo "<ul>";
foreach ($array_files as $value => $valore) {
    echo "<li><a href=\"$path/$valore\">$value - $valore</a></li>";
}
echo "</ul>";   
         }//fine IF
      } //fine WHILE



// ordini l'array in modo NATURALE


closedir($dir);
clearstatcache();
} else {
echo "
<h1>Nessun file nella directory specificata!</h1>
";
}


?>
con natsort, ma invece restituisce lo stesso identico output dello script precedente, come mai?
__________________
Visit my site www.flapane.com - MY BLOG - MY GALLERY - MY Linux/OSX Repository
MBP Retina 13'' i7 2.5ghz (2017) - One Plus 7+ - Sony a6000/16-50 - VDSL 100/40Mbps
flapane è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2008, 10:56   #2
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Con un'indentazione migliore si capisce meglio:
Codice:
 while ($file = readdir($dir)) 
{
   if($file != '..' && $file !='.' && $file !='')
   {
      $array_files = array("$file"); 
      natsort($array_files);
      echo "<ul>";
      foreach ($array_files as $value => $valore)
      {
          echo "<li><a href=\"$path/$valore\">$value - $valore</a></li>";
      } 
      echo "</ul>";   
   }//fine IF
} //fine WHILE
L'errore è: $array_files = array("$file"); dove tu ogni volta crei un nuovo array (cancellando i valori precedenti)

Praticamente tu stai usando natsort su un array che contiene un valore, e poi lo mandi subito in output. Prova così:

Codice:
 while ($file = readdir($dir)) 
{
   if($file != '..' && $file !='.' && $file !='')
   {
      $array_files[] = $file; 
   }//fine IF
} //fine WHILE

natsort($array_files);
echo "<ul>";
foreach ($array_files as $value => $valore)
{
    echo "<li><a href=\"$path/$valore\">$value - $valore</a></li>";
} 
echo "</ul>";
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2008, 11:19   #3
flapane
Senior Member
 
L'Avatar di flapane
 
Iscritto dal: Dec 2003
Città: D-NRW, I-CAM
Messaggi: 8019
Esattamente, avevo il dubbio che l'array si ricreasse ogni volta, è come mi hanno consigliato in un altro forum, grazie.
Inoltre ci sarebbe l'alternativa con glob, che pure conserverò per altre occasioni.
Codice PHP:
$list=glob("directory/*.*");


natsort($list);
echo 
"<ul>";

foreach (
$list as $file) echo "<li><a href=\"/$file\">$file</a></li>";

echo 
"</ul>"
__________________
Visit my site www.flapane.com - MY BLOG - MY GALLERY - MY Linux/OSX Repository
MBP Retina 13'' i7 2.5ghz (2017) - One Plus 7+ - Sony a6000/16-50 - VDSL 100/40Mbps
flapane è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro) Recensione Google Pixel 10 Pro XL: uno zoom 100x...
Le vetture elettriche Opel GSE: Mokka GS...
Star Wars: Knight of the Old Republic Re...
Scoperta un'enorme rete IPTV da pi&ugrav...
Anche Life is Strange diventerà u...
QSAN presenta la nuova serie XN1 di NAS ...
Abbiamo visto in anteprima nuova Renault...
Come ricaricare i veicoli elettrici sino...
Microsoft annuncia nuovi servizi azienda...
Roborock QV 35S spazza via lo sporco: po...
The Last of Us: arriva il primo Emmy per...
Firefox abbandona Linux a 32 bit: fine d...
Reti mobili italiane: chi vince e chi pe...
God of War: le riprese della serie TV ta...
Volkswagen ID. Cross Concept: design Pur...
DAZN e ACE smantellano "Calcio"...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:44.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v