Ciao volevo sapere se era possibile premendo su un collegamento ipertestuale far aprire una pagina a caso in una data cartella.
Ciao volevo sapere se era possibile premendo su un collegamento ipertestuale far aprire una pagina a caso in una data cartella.
Devi usare php.
Potresti fare una cosa del genere:Non l'ho testato ma dovrebbe funzionare. Ricordati lo slash '/' dopo il nome della cartellaCodice PHP:
<?php
$fol = "tuacartella/";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Link</a>";
?>
ciao potresti aiutarmi con questo codice? credo di avere qualche problema
Lo devi mettere in una pagina con estensione .php, oppure crei un file chiamato .htaccess e dentro ci scrivi:e il codice php funzionerà anche nelle pagine con estensione .htm e .html.Codice:AddType application/x-httpd-php .htm .html
Devi poi modificare la variabile $fol e scrivere il percorso ai files. Se vuoi che siano presi files dalla cartella principale petti solo "/"
Questo è il mio codice, è sbagliato?<?php
$fol = " http://www.wtech.altervista.org/portali/tag/apple/";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Articolo Casuale</a>";
?>
Si trova a questa pagina:
http://www.wtech.altervista.org/port...ple/backup.php
Credo che dovresti scrivere semplicemente così:
Con il percorso dell'url che hai inserito tu, il link generato è:Codice PHP:
<?php
$fol = "portali/tag/apple/";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Articolo Casuale</a>";
?>che ovviamente non esiste...Codice:http://wtech.altervista.org/%20http://www.wtech.altervista.org/portali/tag/apple/
Nel primo pezzo del codice :
va il nome della cartella.Codice:$fol = "portali/tag/apple/";
Poi nell'ultimo pezzetto:metti il link all'indirizzo iniziale del tuo sito e quindi non c'è bisogno che inserisci di nuovo i nomi delle cartelle perchè lo hai fatto qui:Codice:print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">
che poi è stato riportato qui:Codice:$fol = "portali/tag/apple/";
Codice:print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\"
Ho messo questo codice:
<?php
$fol = "portali/tag/apple/";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Articolo Casuale</a>";
?>
Ma se provi vedrai che non funziona, mi dice che nella cartella non ci sono index
Prova così:
Ho aggiunto il path assoluto della cartella, nel tuo caso /membri/wtech/...Codice PHP:
<?php
$fol = "/membri/wtech/portali/tag/apple/";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Articolo Casuale</a>";
?>
Ok ora capisce che deve aprire una pagina ma quando premo mi dice che la pagina in questione non esiste:
http://www.wtech.altervista.org/port...ple/backup.php
This is the right code:Codice PHP:
<?php
$fol = "portali/tag/apple";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Link</a>";
?>
Non funziona
prova a cambiare:
con:Codice PHP:
$fol = "portali/tag/apple/";
Perchè NON mettendo lo slash all'inizio, lui va ad aprire:Codice PHP:
$fol = "/portali/tag/apple/";
dato che il file si trova in:Codice:http://www.wtech.altervista.org/portali/tag/apple/portali/tag/apple/
Codice:http://www.wtech.altervista.org/portali/tag/apple/
Il mio codice è questo:
Ma ancora non funziona mi dice che non esiste nessuna pagina index.<?php
$fol = "/portali/tag/apple/";
$h = opendir($fol);
while(false !== ($f = readdir($h)))
if($f != "." && $f != "..")
if(is_file($f))
$arr[] = $f;
$r = rand(0,count($arr)-1);
print "<a href=\"http://wtech.altervista.org/".$fol.$arr[$r]."\">Articolo Casuale</a>";
?>
ma sto pensando una cosa ci sono delle pagine dentro questa cartella portali/tag/apple/ ?
Perchè mi viene da pensare a questo
Sto cercando di creare un piccolo sito per mettere in contatto i giovani "tecnologici" tutti posso scrivere articoli e inserire test programmi.
La cartella apple dovrebbe contenere tutti gli articoli relativi alla famosa casa di software e volevo aggiungere questo codice per poter passare velocemente da un ariticolo all'altro.
no ma dico in questo momento ci sono delle pagine web dentro quella cartella?
Perche se non ci sono è normale che non ti trova nulla...
Ci sono i file:
prova1.html
prova2.html
prova3.html
prova4.html
Sono 4 pagine vuote che contento due parole di testo e nient'altro
ok giusto per provare potresti creare una pagina chiamata anche index.html
Anche se non dovrebbe servire proviamo dato che a me sembra tutto giusto...
Ho creato 4 pagine index1 index2 index3 index4
Ma ora mi apre solo pagina index1
EDIT: http://www.wtech.altervista.org/port...ple/backup.php
Ultima modifica di debug : 02-05-2009 alle ore 11.57.00