Pagina 1 di 3 123 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 64

Discussione: Mostrare contenuto diverso ogni 2 giorni

  1. #1
    Guest

    Predefinito Mostrare contenuto diverso ogni 2 giorni

    Salve a tutti,
    volevo sapere come posso fare per fare una cosa un pò strana, ma che mi serve tanto.
    In pratica se oggi la mia pagina come ha scritto ha "Ciao", dopodomani nella stessa posizione Ciao si deve "trasformare" ("diciamo così") in "Ciao come stai?" e ancora due giorni dopo "Ciao benvenuto" e così ricomincia il giro...
    Come potrei fare?
    Grazie mille!

  2. #2
    Guest

    Predefinito

    in generale farei così per far funzionare il tutto in modo completamente automatico.
    1. Crea una mini tabella su db che avrà sempre e solo una riga:
    |||||||||||||||||||
    ||Frase||Data||
    |||||||||||||||||||
    2. Crea uno script php che procede in questo modo:

    Codice PHP:
    $frase = array();
    $frase[0]="frase";
    $frase[1]="frase";

    Seleziona frase e data dal database: $frase e $data

    if($data è precedente ad oggi){
    echo
    $frase;
    }
    else{
    $nuova_frase = frase successiva a $frase nell'array.
    echo $nuova_frase;
    Modifichi la riga nel database inserendo come frase: $nuova_frase e come data la data di oggi + 2gg.
    }
    Ovviamente il codice è indicativo...non ho tempo di scriverti tutto adesso.
    Per la gestione delle date usa strtotime e time, sono funzioni native di php utilissime e fondamentali.
    Ultima modifica di projectFede : 18-03-2012 alle ore 15.14.15

  3. #3
    Guest

    Predefinito

    Allora, ho capito.
    Il punto è nel database ci metto solo quel codice tuo o altro?
    Per lo script php come lo faccio a mettere in una parte precisa della pagina, visto che la cosa che deve cambiare è un bottone css?
    E poi nel database mi da errore, visto che non so che metterci al posto di data...
    Ultima modifica di talkpluginorange : 18-03-2012 alle ore 17.52.18

  4. #4
    Guest

    Predefinito

    La tabella che devi creare deve avere solo i campi "frase" e "dataTime". Ho scritto dataTime perchè sql da errore se si usa la parola data nelle query. A questo punto sempre tramite phpmyadmin inserisci una riga con "Ciao" e la data di oggi nel formato che preferisci.

    Per lo script php....prima di tutto la pagina che contiene il pulsante css deve essere una pagina .php (se non lo è modificala).
    A questo punto una volta fatto il codice che ti ho indicato a grandi linee, racchiudilo da gli indicatori php <?php ?> e metti il tutto nell'attributo value del pulsante: <input type="button" value="<?php tuo codice ?>" />

    Se non hai capito qualcosa sono a tua disposizione

  5. #5
    Guest

    Predefinito

    Allora, ho creato due campi: frase e dataTime però quando scrivo nel database metto la data in gg/mm/anno mi da errore! Poi nel php come chiamo il database?
    Ultima modifica di talkpluginorange : 18-03-2012 alle ore 20.15.30

  6. #6
    Guest

    Predefinito

    il database nel tuo caso è my_talkpluginorange.

    Il campo dataTime è un VARCHAR di lunghezza 10 ? Se sì...che errore ti riporta?

  7. #7
    Guest

    Predefinito

    Nel campo frase accanto c'è scritto: int(10)
    mentre accanto a "dataTime" c'è: varchar(255)
    e quando nella SQL metto il tuo codice:
    |||||||||||||||||||
    ||Ciao||18/03/2012||
    |||||||||||||||||||
    mi appare questo errore:
    Errore
    Pare che ci sia un errore nella query SQL immessa. L'errore del server MySQL mostrato qui sotto, se c'è, può anche aiutare nella risoluzione del problema

    ERROR: Stringa di Punctuation Sconosciuta @ 1
    STR: |||||||||||||||||||
    SQL: |||||||||||||||||||
    ||Frase||18/03/2012||
    |||||||||||||||||||

    query SQL:

    ||||||||||||||||||| ||Frase||18/03/2012|| |||||||||||||||||||

    Messaggio di MySQL:

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '|||||||||||||||||||
    ||Frase||18/03/2012||
    |||||||||||||||||||' at line 1

  8. #8
    Guest

    Predefinito

    Hai provato a inserire i dati cliccando sul tasto apposta "Inserisci" di phpmyadmin?
    Comunque...la query che devi eseguire è

    INSERT INTO `nometabella` VALUES ('Ciao','18/13/2012')
    Ultima modifica di projectFede : 18-03-2012 alle ore 21.17.14

  9. #9
    Guest

    Predefinito

    La mia tabella sul database my_talkpluginorange si chiama "tabella_file" che contiene i campi frase e dataTime, quando clicco su tabella_file vengo reindirizzato a "Struttura", accanto c'è "SQL", clicco lì e c'è una grande textarea dove metto il tuo codice, ma quando salvo mi da errore

  10. #10
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Se vuoi non usare il database, visto che comunque occorre salvare soltanto 2* dati, si potrebbe fare via file.

    Ho buttato giù un po' di codice:
    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!
    file_exists($file))
    {
    file_put_contents($file, "0\n".mktime(0,0,0)); //scrivo 0 e il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else
    {
    $dati = file($file); //in dati[0] abbiamo la frase; in dati[1] il timestamp scritto
    if($_SERVER['REQUEST_TIME']-$dati[1] > 3600*24*3) //se superiamo i 3 giorni dall'aver scritto il file
    {
    file_put_contents($file, "0\n".mktime(0,0,0)); //scrivo 0 e il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$dati[1] > 3600*24*2) //se son passati 2 giorni mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$dati[1] > 3600*24) //se è passato 1 giorno mostro la frase 1
    echo $frasi[1];
    else
    //altrimenti, mostro la frase 0
    echo $frasi[0];
    }
    ?>
    Vedi se può esserti utile...

    *Che tra l'altro, mi son appena accorto che lo "0" è inutile salvarlo. È sufficiente soltanto il timestamp.

    Ciao!
    Ultima modifica di alemoppo : 18-03-2012 alle ore 21.27.14

  11. #11
    Guest

    Predefinito

    Grazieee!!!
    Solo che per vedere se funziona dovrei aspettare due giorni, come posso ridurre a due minuti?
    Ho provato a modificare così:
    Codice:
    <button type="submit" class="g-button"><h4><?php
    $file = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!file_exists($file))
    {
        file_put_contents($file, "0\n".mktime(0,0,0));    //scrivo 0 e il timestamp di oggi alle 20:53:23
        echo $frasi[0];
    }
    else
    {
        $dati = file($file); //in dati[0] abbiamo la frase; in dati[1] il timestamp scritto
        if($_SERVER['REQUEST_TIME']-$dati[1] > 120)    //se superiamo i 2 minuti dall'aver scritto il file
        {
            file_put_contents($file, "0\n".mktime(0,0,0));    //scrivo 0 e il timestamp di oggi alle 20:53:23
            echo $frasi[0];
        }
        else if($_SERVER['REQUEST_TIME']-$dati[1] > 120)    //se son passati 2 minuti mostro la frase 2
            echo $frasi[2];
        else if($_SERVER['REQUEST_TIME']-$dati[1] > 120)    //se son passati 2 minuti mostro la frase 1
            echo $frasi[1];
        else     //altrimenti, mostro la frase 0
            echo $frasi[0];
    }
    ?></h4></button></div>
    		
        <style>
       ...css
        </style>
    ma molto probabilmente ho errato, visto che ho aggiornato due minuti dopo esatti, anche per secondi e la scritta è sempre "ciao"
    Ora io voglio fare questo ogni due giorni, però vorrei provare con due minuti solo per vedere se funziona
    Ultima modifica di talkpluginorange : 18-03-2012 alle ore 22.00.18

  12. #12
    Guest

    Predefinito

    Ecco in minuti.

    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!
    file_exists($file))
    {
    file_put_contents($file, "0\n".mktime(0,0,0)); //scrivo 0 e il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else
    {
    $dati = file($file); //in dati[0] abbiamo la frase; in dati[1] il timestamp scritto
    if($_SERVER['REQUEST_TIME']-$dati[1] > 180) //se superiamo i 3 giorni dall'aver scritto il file
    {
    file_put_contents($file, "0\n".mktime(0,0,0)); //scrivo 0 e il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$dati[1] > 120) //se son passati 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$dati[1] > 60) //se è passato 1 minuto mostro la frase 1
    echo $frasi[1];
    else
    //altrimenti, mostro la frase 0
    echo $frasi[0];
    }
    ?>
    alemoppo davvero bravo :)

  13. #13
    Guest

    Predefinito

    Ma al posto di 00:00:00 devo mettere l'ora in cui salvo? Comunque ho fatto così e non funziona!
    Ultima modifica di talkpluginorange : 18-03-2012 alle ore 22.36.01

  14. #14
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Così non salva lo "0" inutile:

    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!
    file_exists($file))
    {
    file_put_contents($file, mktime(0,0,0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else
    {
    $time = file_get_contents($file); //prelevo il timestamp dal file
    if($_SERVER['REQUEST_TIME']-$time > 3600*24*3) //se superiamo i 3 giorni dall'aver scritto il file
    {
    file_put_contents($file, mktime(0,0,0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$time > 3600*24*2)//se son passati 2 giorni mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 3600*24) //se è passato 1 giorno mostro la frase 1
    echo $frasi[1];
    else
    //altrimenti, mostro la frase 0
    echo $frasi[0];
    }
    ?>
    Per verificare che funziona, puoi modificare il timestamp salvato nel file "giorno.txt" {a cui ovviamente puoi modificare il nome}.
    Ho provato, e sembra funzionare.

    Ma al posto di 00:00:00 devo mettere l'ora in cui salvo? Comunque ho fatto così e non funziona!
    La stringa "00:00:00" nel sorgente non la vedo, a parte nel commento. Quindi, essendo un commento, non influisce sul sorgente.
    Prima di usare (se lo vuoi usare) il codice che ti ho scritto, ti prego di farmi un favore: cerca di capire come funziona!. In questo modo, oltre che ad imparare, sarai in grado di adattarlo al meglio per il tuo scopo, o comunque di rifarlo se hai bisogno di una cosa simile.
    Se non capisci qualcosa, ovviamente chiedi! Il forum c'é per questo! (e non per dare sorgenti già pronti).

    ---
    alemoppo davvero bravo :)
    Grazie mille!

    Ciao!
    Ultima modifica di alemoppo : 18-03-2012 alle ore 23.21.57

  15. #15
    Guest

    Predefinito

    Certo che sto imparando! Voi siete dei grandi ;)
    Ma io non capisco proprio la logica! :)
    Allora devo creare il file giorno.txt e mettere una sotto l'altra le frasi?
    Ora il tuo codice sopra aggiorna ogni due giorni, ma mi puoi mettere il codice per farlo aggiornare ogni due minuti? Perchè non so come configurare e non so se poi funziona ;)

  16. #16
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    In generale funziona così:

    Se non esiste, creo un file in cui ci salvo il timestamp (in pratica è il numero di secondi trascorsi dal 1° gennaio del 1970) e mostro la prima frase.

    Se invece il file esiste, allora acquisisco il timestamp salvato precedentemente (e lo assegno a $time).
    Poi controllo quanto tempo è passato da quando ho salvato il file. Se il tempo è maggiore di 3 giorni, resetto il timestamp, con quello del giorno di oggi (alle 00:00:00).
    Altrimenti, scrivo la frase corrispondente: se son passati più di 2 giorni
    Codice PHP:
    else if($_SERVER['REQUEST_TIME']-$time > 3600*24*2)
    stampo l'ultima frase (posizione 2 dell'array $frasi); se è passato più di un giorno, stampo la frase "1", altrimenti la "0".

    3600 è il numero di secondi in un'ora. Moltiplicato per 24 da il numero di secondi in un giorno. Moltiplicato per 2 da il numero di secondi in 2 giorni...

    Quindi, per verificare se funziona (ho provato e sembra funzionare), occorre decrementare i secondi salvati nel file: in questo modo, allo script sembrerà che lo ha scritto giorni prima. Ad esempio, se lo decrementi di 3600*24 dovresti vedere la seconda frase, perché lo script penserà che ha creato il file ieri...

    ...In effetti però c'é il problema che se il 4° giorno nessuno visita la pagina, lo script non resetta il timestamp nel giorno "corretto", quindi poi sballa tutto; ma dipende da cosa ti serve. Potrebbe andar bene anche così; altrimenti, bisognerebbe aggiungere quel controllo.

    Ciao!
    Ultima modifica di alemoppo : 18-03-2012 alle ore 23.34.18

  17. #17
    Guest

    Predefinito

    Ok...
    Quindi potresti postare il codice completo? Scusa l'ignoranza...
    quindi nel file giorno.txt che devo metterci?

  18. #18
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito



    Quello è già completo.
    Il file lo crea (e lo gestisce) lo script in automatico! Prova a guardare "accanto" al file php: dovrebbe esserci il file "giorno.txt".

    Ciao!

    EDIT:

    Il discorso in prima persona che ho fatto qui spiega (o almeno, dovrebbe) come funziona lo script. Io non ho creato nessun file!
    Ultima modifica di alemoppo : 18-03-2012 alle ore 23.40.00

  19. #19
    Guest

    Predefinito

    Ok... l'ho messo, ma non ho ancora capito se funziona o meno, allora, a questo punto vedi tu se è giusto, visto che sto aggiornando in continuazione e c'è sempre "ciao".
    http://talkpluginorange.altervista.org/pppp.php qui "dovrebbe" funzionare...
    codice relativo a questa pagina:
    Codice:
    <button type="submit" class="g-button"><h4><?php
    $file = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!file_exists($file))
    {
        file_put_contents($file, mktime(0,0,0));            //scrivo il timestamp di oggi alle 00:00:00
        echo $frasi[0];
    }
    else
    {
        $time = file_get_contents($file);                    //prelevo il timestamp dal file
        if($_SERVER['REQUEST_TIME']-$time > 3600*24*3)       //se superiamo i 3 giorni dall'aver scritto il file
        {
            file_put_contents($file, mktime(0,0,0));           //scrivo il timestamp di oggi alle 00:00:00
            echo $frasi[0];
        }
        else if($_SERVER['REQUEST_TIME']-$time > 3600*24*2)//se son passati 2 giorni mostro la frase 2
            echo $frasi[2];
        else if($_SERVER['REQUEST_TIME']-$time > 3600*24)  //se è passato 1 giorno mostro la frase 1
            echo $frasi[1];
        else                                                 //altrimenti, mostro la frase 0
            echo $frasi[0];
    }
    ?></h4></button></div>
    		
    		<style>
    button.g-button, a.g-button, input[type="submit"].g-button {
    padding: 6px 10px;
    -webkit-border-radius: 2px 2px;
    border: solid 1px #999;
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(white), to(#DDD));
    color: #444;
    font-size: 13px;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    text-shadow: 0px 1px 1px rgba(255, 255, 255, 1);
    line-height: 1;
    }
    		</style>
    giorno.txt
    Codice:
    ciao
    ciao come stai?
    ciao benvenuto

  20. #20
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Modifica il file "giorno.txt" con questo numero:
    Codice:
    1331938800
    .
    Dovrebbe apparire la seconda frase.
    Se invece lo sostituisci con questo:
    Codice:
    1331852400
    Dovrebbe dare la terza frase.
    (il tutto entro le 00:00).

    Ciao!

  21. #21
    Guest

    Predefinito

    Ora appare la seconda frase e non appare più la prima! Come posso fare per fare apparire 3 frasi ogni due minuti in automatico?
    Inoltre ho aggiunto anche l'id della terza frase...
    Ultima modifica di talkpluginorange : 19-03-2012 alle ore 00.08.08

  22. #22
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    In minuti:

    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!
    file_exists($file))
    {
    file_put_contents($file, mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi con 0 secondi
    echo $frasi[0];
    }
    else
    {
    $time = file_get_contents($file); //prelevo il timestamp dal file
    if($_SERVER['REQUEST_TIME']-$time > 60*3) //se superiamo i 3 minuti dall'aver scritto il file
    {
    file_put_contents($file,mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2)//se son passati 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60) //se è passato 1 minuto mostro la frase 1
    echo $frasi[1];
    else
    //altrimenti, mostro la frase 0
    echo $frasi[0];
    }
    ?>
    Comunque mi ripeto: se non capisci lo script, usarlo non ti serve a nulla.

    Cosa significa che hai aggiunto l'id della terza frase?

    Ciao!
    Ultima modifica di alemoppo : 19-03-2012 alle ore 00.34.28

  23. #23
    Guest

    Predefinito

    Ora funziona ed ho pure capito come funziona :) !!!!
    Grande! Quindi in ogni due giorni è così o sbaglio?
    Codice:
    <?php
    $file = 'giorno.txt';
    $frasi = array('ciao','ciao come stai?','Ciao benvenuto');
    if(!file_exists($file))
    {
        file_put_contents($file, mktime(0,0,0));            //scrivo il timestamp di oggi alle 00:00:00
        echo $frasi[0];
    }
    else
    {
        $time = file_get_contents($file);                    //prelevo il timestamp dal file
        if($_SERVER['REQUEST_TIME']-$time > 3600*24*3)       //se superiamo i 3 giorni dall'aver scritto il file
        {
            file_put_contents($file, mktime(0,0,0));           //scrivo il timestamp di oggi alle 00:00:00
            echo $frasi[0];
        }
        else if($_SERVER['REQUEST_TIME']-$time > 3600*24*2)//se son passati 2 giorni mostro la frase 2
            echo $frasi[2];
        else if($_SERVER['REQUEST_TIME']-$time > 3600*24)  //se è passato 1 giorno mostro la frase 1
            echo $frasi[1];
        else                                                 //altrimenti, mostro la frase 0
            echo $frasi[0];
    }
    ?>

  24. #24
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Sì. Come tel'avevo scritto qui.

    Mi fa molto piacere che lo hai capito.

    Ciao!

  25. #25
    Guest

    Predefinito

    Riprendo questo post perchè vorrei che il tempo non fosse a scaletta, ma uguale per ogni frase.
    Ho provato (DA SOLO) a fare così:
    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('google','facebook','twitter','myspace','google plus');
    if(!
    file_exists($file))
    {
    file_put_contents($file, mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi con 0 secondi
    echo $frasi[0];
    }
    else
    {
    $time = file_get_contents($file); //prelevo il timestamp dal file
    if($_SERVER['REQUEST_TIME']-$time > 60*5) //se superiamo i 5 minuti dall'aver scritto il file
    {
    file_put_contents($file,mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2)//se son passati 2 minuti mostro la frase 1
    echo $frasi[1];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2) //se son passati altri 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2) //se son passati altri 2 minuti mostro la frase 3
    echo $frasi[3];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2) //se son passati altri 2 minuti mostro la frase 4
    echo $frasi[4];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2) //se son passati altri 2 minuti mostro la frase 5
    echo $frasi[5];
    else
    //altrimenti, mostro la frase 0
    echo $frasi[0];
    }
    ?>
    Ma mostra solo le frasi "facebook" e "google" e tutte le altre no...
    Grazie a chi mi risponderà e buona Pasqua a tutti!
    Ultima modifica di talkpluginorange : 08-04-2012 alle ore 15.21.11

  26. #26
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Quegli condizioni negli if son tutti uguali. Ovviamente, viene eseguito sempre e solo il primo.

    Dovresti fare una cosa come (è errata):
    Codice PHP:
    else if($_SERVER['REQUEST_TIME']-$time > 60*2)//se son passati 2 minuti mostro la frase 1
    echo $frasi[1];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*4) //se son passati altri 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*6) //se son passati altri 2 minuti mostro la frase 3
    echo $frasi[3];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*8) //se son passati altri 2 minuti mostro la frase 4
    echo $frasi[4];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*10) //se son passati altri 2 minuti mostro la frase 5
    echo $frasi[5];
    Ciao!
    Ultima modifica di alemoppo : 08-04-2012 alle ore 18.55.44

  27. #27
    Guest

    Predefinito

    Ecco il codice trasformato:
    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('google','facebook','twitter','myspace','google plus');
    if(!
    file_exists($file))
    {
    file_put_contents($file, mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi con 0 secondi
    echo $frasi[0];
    }
    else
    {
    $time = file_get_contents($file); //prelevo il timestamp dal file
    if($_SERVER['REQUEST_TIME']-$time > 60*6) //se superiamo i 6 minuti dall'aver scritto il file
    {
    file_put_contents($file,mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2)//se son passati 2 minuti mostro la frase 1
    echo $frasi[1];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*4) //se son passati altri 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*6) //se son passati altri 2 minuti mostro la frase 3
    echo $frasi[3];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*8) //se son passati altri 2 minuti mostro la frase 4
    echo $frasi[4];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*10) //se son passati altri 2 minuti mostro la frase 5
    echo $frasi[5];
    }
    ?>
    ma all'inizio la pagina è bianca, poi è apparso "facebook", poi dopo 2 minuti "google" e poi di nuovo bainca!
    Ultima modifica di talkpluginorange : 08-04-2012 alle ore 15.47.56

  28. #28
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Codice PHP:
    f($_SERVER['REQUEST_TIME']-$time > 60*6) //se superiamo i 6 minuti dall'aver scritto il file
    {
    file_put_contents($file,mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2)//se son passati 2 minuti mostro la frase 1
    echo $frasi[1];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*4) //se son passati altri 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*6) //se son passati altri 2 minuti mostro la frase 3
    echo $frasi[3];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*8) //se son passati altri 2 minuti mostro la frase 4
    echo $frasi[4];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*10) //se son passati altri 2 minuti mostro la frase 5
    echo $frasi[5];
    Ma come fanno a verificarsi le condizioni >60*6, >60*8, >60*10 se a 60*6 resetti?

    Ciao!

  29. #29
    Guest

    Predefinito

    Ho copia-incollato il codice, ma fa strane cose, appare "facebook", "google" e dopo bianco:
    http://talkpluginorange.altervista.org/index.php

    Codice:
    Codice PHP:
    <?php
    $file
    = 'giorno.txt';
    $frasi = array('google','facebook','twitter','myspace','google plus');
    if(!
    file_exists($file))
    {
    file_put_contents($file, mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi con 0 secondi
    echo $frasi[0];
    }
    else
    {
    $time = file_get_contents($file); //prelevo il timestamp dal file
    If($_SERVER['REQUEST_TIME']-$time > 60*6) //se superiamo i 6 minuti dall'aver scritto il file
    {
    file_put_contents($file,mktime(date("H"),date("i"),0)); //scrivo il timestamp di oggi alle 00:00:00
    echo $frasi[0];
    }
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*2)//se son passati 2 minuti mostro la frase 1
    echo $frasi[1];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*4) //se son passati altri 2 minuti mostro la frase 2
    echo $frasi[2];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*6) //se son passati altri 2 minuti mostro la frase 3
    echo $frasi[3];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*8) //se son passati altri 2 minuti mostro la frase 4
    echo $frasi[4];
    else if(
    $_SERVER['REQUEST_TIME']-$time > 60*10) //se son passati altri 2 minuti mostro la frase 5
    echo $frasi[5];
    }
    ?>
    Ultima modifica di talkpluginorange : 08-04-2012 alle ore 15.55.36

  30. #30
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Citazione Originalmente inviato da talkpluginorange Visualizza messaggio
    Ho copia-incollato il codice
    Il codice non l'ho cambiato. L'ho soltanto riquotato.
    Rispondi alla domanda, invece di cercare il codice già pronto.

    Inoltre, prova a debuggarlo mentalmente. Vedrai che c'é qualcosa che non va (nella logica )... Mentre questo è corretto. Visto che lo hai capito, non è difficile correggerlo.

    Ciao!
    Ultima modifica di alemoppo : 08-04-2012 alle ore 16.57.11

Pagina 1 di 3 123 UltimoUltimo

Regole di scrittura

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