SAlve volevo sapere se era possibile e come fare a fare in modo che una pagina legga il contenuto di una cartella contenente pdf e generi automaticamente una tabelle di n colonne dove n è il numero di pdf con i rispettivi link...
SAlve volevo sapere se era possibile e come fare a fare in modo che una pagina legga il contenuto di una cartella contenente pdf e generi automaticamente una tabelle di n colonne dove n è il numero di pdf con i rispettivi link...
Sì che si può fare! E non è neanche tanto complicatoOriginariamente inviato da __SUPERMAN__
SAlve volevo sapere se era possibile e come fare a fare in modo che una pagina legga il contenuto di una cartella contenente pdf e generi automaticamente una tabelle di n colonne dove n è il numero di pdf con i rispettivi link...
Ho fatto un piccolo script che legge tutti i files della cartella in cui c'è la pagina, si può tranquillamente adattarlo per i soli file pdf... Ora non sono a casa, tra mezz'ora torno e ti invio il file (magari modificato)
Intanto eccoti un link dove ci sono le funzioni principali per leggere file da una directory:
http://www.php.net/manual/en/ref.filesystem.php
ecco qua:
Come si vede la funzione che fa tutto è leggiFiles, che restituisce l'array dei files trovati, il resto è per la stampa in tabella.Codice PHP:
<?
ini_set("max_execution_time",10);
$path = "prova/";
$lista = leggiFiles($path, "php");
?>
<table border="1">
<tr>
<? for ($i=0; $i<count($lista); $i++) { ?>
<td>[url="<?= $path . $lista[$i] ?>"]<?= $lista[$i] ?>[/url]</td>
<? } ?>
</tr>
</table>
<?
function leggiFiles($percorso, $estensione) {
$files = NULL;
// aggiungo il "." all'estensione se non c'è già
if ($estensione!= NULL && $estensione[0] != '.') {
$estensione = "." . $estensione;
}
if ($root=@opendir($percorso))
while ($file=readdir($root)) {
// in pratica la condizione vuol dire "se l'estensione del file
// (gli ultimi caratteri) corrispondono all'estensione, allora prendo il file
if ((substr($file, strlen($file)-strlen($estensione), strlen($estensione)) == $estensione))
$files[] = $file;
}
return $files;
}
?>
In questo caso ho cercato tutti i file txt nella cartella "prova" che è nella stessa cartella in cui c'è questo file php.
Funziona anche passandogli un percorso assoluto
p.s. ho usato i tag limitatori corti "<?", se il tuo webserver li trova come deprecati sostituiscili con "<?php"
Allora l'ho provato e mi stampa solo un punitno.. non funziona XD
Non può essere, l'ho provato e funzionaOriginariamente inviato da __SUPERMAN__
Allora l'ho provato e mi stampa solo un punitno.. non funziona XD![]()
Com'è precisamente la chiamata a funzione hai fatto?
per curiosità creati un file php dove ci scrivi questo:
Apri la pagina e trova la variabile shortopentag (o short_open_tag), dimmi se è a trueCodice PHP:
<?php phpinfo() ?>
Se è a false è normale che non funzioni, sostituisci gli "<?" con "<?php" ed è fatta
(al posto di <?= ... ?> usa <?php echo(...) ?> )
ho solo cambiato il nome cartella e ho messo .txt dentroCodice PHP:
<?php
ini_set("max_execution_time",10);
$path = "Documenti/";
$lista = leggiFiles($path, "php");
?>
<table border="1">
<tr>
<?php for ($i=0; $i<count($lista); $i++) { ?>
<td>[url="<?= $path . $lista[$i] ?>"]<?= $lista[$i] ?>[/url]</td>
<?php } ?>
</tr>
</table>
<?php
function leggiFiles($percorso, $estensione) {
$files = NULL;
// aggiungo il "." all'estensione se non c'è già
if ($estensione!= NULL && $estensione[0] != '.') {
$estensione = "." . $estensione;
}
if ($root=@opendir($percorso))
while ($file=readdir($root)) {
// in pratica la condizione vuol dire "se l'estensione del file
// (gli ultimi caratteri) corrispondono all'estensione, allora prendo il file
if ((substr($file, strlen($file)-strlen($estensione), strlen($estensione)) == $estensione))
$files[] = $file;
}
return $files;
}
?>
Ricarica la pagina e visualizzane il codice html (tasto destro -> vis. sorgente pagina o mostra codice html), posta quello che ne è uscitoOriginariamente inviato da __SUPERMAN__
ho solo cambiato il nome cartella e ho messo .txt dentroCodice PHP:
<?php
ini_set("max_execution_time",10);
$path = "Documenti/";
$lista = leggiFiles($path, "php");
?>
<table border="1">
<tr>
<?php for ($i=0; $i<count($lista); $i++) { ?>
<td>[url="<?= $path . $lista[$i] ?>"]<?= $lista[$i] ?>[/url]</td>
<?php } ?>
</tr>
</table>
<?php
function leggiFiles($percorso, $estensione) {
$files = NULL;
// aggiungo il "." all'estensione se non c'è già
if ($estensione!= NULL && $estensione[0] != '.') {
$estensione = "." . $estensione;
}
if ($root=@opendir($percorso))
while ($file=readdir($root)) {
// in pratica la condizione vuol dire "se l'estensione del file
// (gli ultimi caratteri) corrispondono all'estensione, allora prendo il file
if ((substr($file, strlen($file)-strlen($estensione), strlen($estensione)) == $estensione))
$files[] = $file;
}
return $files;
}
?>
p.s. ma la pagina dov'è salvata? Puoi zippare tutta la cartella ed inviarla?