Visualizzazione risultati 1 fino 7 di 7

Discussione: Include random di file presenti in una cartella

  1. #1
    Guest

    Predefinito Include random di file presenti in una cartella

    Salve gente.

    Volevo rinnovare la mia sezione programmi, e volevo creare una pagina dinamica nella quale inserivo con un comando include dei files (in .htm o html oppure mi va bene in php o tpl, fa lo stesso) in maniera casuale.

    Qualcuno sa dirmi qualcosa?
    Grazie 1000

  2. #2
    Guest

    Predefinito

    fai così
    Codice PHP:
    <?
    $pagina
    [] = "1.html";
    $pagina[] = "2.html";
    $pagina[] = "3.html";
    $pagina[] = "4.html";
    //ne puoi mettere quanti vuoi

    $num = count($pagina) - 1;//conta gli elementi dell'array
    srand ((double) microtime() * 1000000);//sceglie un numero casuale
    $random = rand(0,$num);//impone i limiti del numero casuale

    $paginascelta = $pagina[$random];

    include (
    $paginascelta);
    ?>
    dimmi se funziona...ciao!
    Ultima modifica di gabriballets : 22-02-2008 alle ore 20.59.39

  3. #3
    Guest

    Predefinito

    Dato che di php ci capisco pochissimo ti chiedo 2 cosette:

    Codice PHP:
    <?
    $pagina
    [] = "1.html"; //al posto di 1.html che pagina devo mettere? La pagina nella quale ho scritto cosa devo inserire?

    $num = count($pagina) - 1;//conta in automatico o devo mettere io il numero preciso di file?
    srand ((double) microtime() * 1000000);//va lasciato così?
    $random = rand(0,$num);//devo dare io un valore?

    $paginascelta = $pagina[$random];

    include (
    $paginascelta); // dove al posto di paginascelta metto la pagina usata nella quale inserisco questo codice?
    ?>

  4. #4
    Guest

    Predefinito

    il codice lo devi inserire nella pagina madre, quella che conterrà l'include(che ti ho già messo)
    al posto dei vari 1.html 2.html ecc metti i nomi dei file da includere (se questi file sono nella stessa cartella della pagina madre, sennò devi fare include("cartella/".$paginascelta); )
    tutto il resto NON lo toccare...fammi sapere! :)


    EDIT: visto che ho un po di tempo ti rendo le cose chiare:
    la pagina madre
    Codice PHP:
    <?
    $pagina
    [] = "1.html";
    $pagina[] = "2.html";
    $pagina[] = "3.html";
    $pagina[] = "4.html";
    //questi sono i file fra i quali scegliere(non tu, fa tutto la funzione)
    //quello che apparirà, ne puoi mettere quanti vuoi,
    //possono essere in htm, html, php, txt...
    //te devi solo mettere il loro nome

    $num = count($pagina) - 1;//conta gli elementi dell'array
    srand ((double) microtime() * 1000000);//sceglie un numero casuale
    $random = rand(0,$num);//impone i limiti del numero casuale
    //qua sopra non devi cambiare assolutamente nulla...
    //ho scritto solo per spiegarti!

    $paginascelta = $pagina[$random];//qua do un nome alla pagina che sarà scelta (in automatico te non cambiare nulla!)

    include ($paginascelta);//e questo sarà l'include di cui parlavi te!(anche qui non cambiare nulla)
    ?>
    nella stessa cartella puoi mettere (in questo caso) i file 1.html 2.html ecc e la pagina madre ne mostrerà solo uno!
    Ultima modifica di funcool : 23-02-2008 alle ore 11.09.14

  5. #5
    Guest

    Predefinito

    Grazie 1000, ora sono riuscito.

    Che ne dici?

  6. #6
    Guest

    Predefinito

    ottimo!mi fa piacere esserti stato utile!

    aggiungo però questo codice che ho fatto ieri per il blog del mio sito dal funzionamento simile:

    Codice PHP:
    <?

    $folderName
    = "cartella/";

    $articoli=array();

    $cartella = opendir($folderName);

    while (
    $file = readdir($cartella)) {

    if(
    $file !='.' && $file !='..'){

    if(
    is_file($folderName.'/'.$file)){

    array_push($articoli,$folderName.'/'.$file);
    }
    }
    }
    $numarticoli = count($articoli) - 1;
    srand ((double) microtime() * 1000000);
    $randomarticoli = rand(0,$numarticoli);

    $articoloscelto = $articoli[$randomarticoli];

    include (
    $articoloscelto);

    ?>
    questa pagina php sceglie in automatico un file da una cartella che io ho chiamato "cartella"...in questo modo non deve essere mai aggiornato.basta aggiungere i file alla cartella.
    il funzionamento è molto simile, ma è più comodo!

  7. #7
    Guest

    Predefinito

    Infatti è molto meglio...allora userò quello! Grazie ancora!!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •