- Home
- Categorie
- Coding e Sistemistica
- Coding
- Rinominare singoli file di una cartella
-
Rinominare singoli file di una cartella
Buongiorno a tutti del Forum, vorrei chiederVi un info: ho una cartella con vari file al suo interno, jpg, docx, xls, ecc....
Vorrei sapere l'esistenza di qualche codice che mi permetta di elencare il contenuto della cartella ed avere la possibilità di modificare eventualmente il nome del file da me desiderato. Spero di essere stato chiaro. Grazie in anticipo a tutti.
-
Ciao e benvenuto!
1- per elencare il contenuto di una cartella puoi utilizzare questa funzione http://php.net/manual/en/function.scandir.php
2- per rinominare il file invece usa quest'altra http://php.net/manual/it/function.rename.php
Spero di aver compreso le tue richieste
-
ciao pietroR ti ringrazio per la risposta...il codice mi elenca perfettamente tutti i file della mia cartella. Il problema sta che non riesco a rinominare i file, ossia nel secondo link che hai postato è possibile rinominare i file scrivendo direttamente nel codice i file da rinominare, invece a me occorre rinominare a video alcuni file in quanto non so a priori quali sono i file da rinominare, perchè essi non vengono caricati solo da me. Spero di essere stato chiaro. Grazie.
-
Ciao Si
potresti tramite la prima funzione recuperare l'elenco dei file da vedere/modificare e visualizzarli tramite delle textbox. Una volta fatto ciò potresti associare ad ogni textbox un bottone che scateni l'evento della modifica (recuperando il nome del nuovo file dal valore del campo della textbox)
-
Ciao PietroR, grazie per l'info...in verità non so come si fa...tu potresti per favore postarmi un esempio. Grazie.
-
per riempire le textbox o anche visualizzare i file?
-
per riempire le textbox grazie
-
Supponiamo che tu abbia la tua lista di file memorizzata in $listaFile
<?php for($i=0;$i<count($listaFile);$i++) { $idCasella="file".$i; ?> <input type="text" id="<?= $idCasella ?> name="<?= $idCasella ?>" value="<?= $listaFile* ?>" /> <?php } ?>
in questo modo scorri la tua lista dei file ed assegni ad ogni campo text, creato dinamicamente, il valore tramite l'attributo value.
Ecco una panoramica del campo input
-
Ciao pietror, grazie mille per l'info, vorrei chiederti solo un'altra cosa: come faccio a far si che ogni textbox generata abbia un name diverso? grazie.
-
Nel codice che ti ho scritto, ne noti i campi id e name sono creati dinamicamente e si chiamano file0, file1... ho cerato una variabile $idCasella in php e successivamente l'ho assegnata al campo name e id.
-
ciao pietroR....il mio codice x elencare i file contenuti della cartella "uploadtest" è questo, come faccio ad inserire al suo interno il ciclo for postato da te in modo da assegnarlo al valore name dell'input? grazie.
<?php
include("config.php");
$path = IMAGE_DIR;
$dir=opendir("$path");
if($dir){
while ($file = readdir($dir)){
if($file != '..' && $file !='.' && $file !='' && $file !='.DS_Store'){print "<input type="text" name="?" value="$file"/>";
}
}
closedir($dir);
clearstatcache();
}
else {echo "Impossibile aprire la directory specificata!";}
?>
-
Ciao
purtroppo su questo pc non ho un web server e non posso testarlo, comunque dovrebbe essere così.
In pratica ho creato una variabile $i che si incrementa ogni qual volta viene trovato un file nuovo in modo tale da dare un nome univoco al campo<?php $i=0; include("config.php"); $path = IMAGE_DIR; $dir=opendir("$path"); if($dir){ while ($file = readdir($dir)){ if($file != '..' && $file !='.' && $file !='' && $file !='.DS_Store'){ $idCasella="file".$i; print "<input type=\"text\" name="<?= $idCasella ?>" value=\"$file\"/>"; $i=$i++; } } closedir($dir); clearstatcache(); } else {echo "Impossibile aprire la directory specificata!";} ?>