-
Il primo errore è che nell'if
Codice PHP:
else if($_SERVER['REQUEST_TIME']-$time > 60*30)
else //altrimenti, mostro la frase 0
echo $frasi[0];
Non c'é alcuna istruzione da eseguire: gli hai scritto "else", ma prima si aspettava una istruzione da eseguire per quell'if.
Per l'altro discorso, lo script così scritto mostra la frase a casaccio ogni 30 minuti, e non ogni 4 minuti.
All'inizio del topic sei partito dicendo che lo volevi ogni 2 giorni. Poi l'hai voluto in minuti. Poi ogni 2 minuti. Poi 4 minuti. Poi ogni 30 minuti. Adesso hai scritto il codice per 30 minuti ma lo rivuoi per 4 minuti :shock:. Ti decidi?
Comunque, l'ho provato e a me funziona correttamente: per la prima mezz'ora mostra "ciao", poi ogni mezz'ora cambia. Se lo vuoi ogni 4 minuti, penso che ormai hai capito cosa devi fare. Se dopo 3 pagine di topic, ancora non hai capito come fare, allora evidentemente sono io che non spiego bene; quindi è inutile che continuo a rispondere.
Ciao!
-
Nono sto facendo vari tempi, ho capito come si fa...
Ho corretto il codice, ma mi da ancora errore:
Codice PHP:
<?php
$file = 'frasi2.txt';
$frasi = array('unione europea','usa','facebook','champions league','tim krul','mario monti','obama','iphone','wall street');
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*360) //se superiamo i 360 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*330)//se son passati 30 minuti mostro la frase 1
echo $frasi[1];
else if($_SERVER['REQUEST_TIME']-$time > 60*300) //se son passati altri 30 minuti mostro la frase 2
echo $frasi[2];
else if($_SERVER['REQUEST_TIME']-$time > 60*270) //se son passati altri 30 minuti mostro la frase 3
echo $frasi[3];
else if($_SERVER['REQUEST_TIME']-$time > 60*240) //se son passati altri 30 minuti mostro la frase 4
echo $frasi[4];
else if($_SERVER['REQUEST_TIME']-$time > 60*210) //se son passati altri 30 minuti mostro la frase 5
echo $frasi[5];
else if($_SERVER['REQUEST_TIME']-$time > 60*180) //se son passati altri 30 minuti mostro la frase 6
echo $frasi[6];
else if($_SERVER['REQUEST_TIME']-$time > 60*150) //se son passati altri 30 minuti mostro la frase 7
echo $frasi[7];
else if($_SERVER['REQUEST_TIME']-$time > 60*120) //se son passati altri 30 minuti mostro la frase 8
echo $frasi[8];
else if($_SERVER['REQUEST_TIME']-$time > 60*90) //se son passati altri 30 minuti mostro la frase 6
echo $frasi[6];
else if($_SERVER['REQUEST_TIME']-$time > 60*60) //se son passati altri 30 minuti mostro la frase 7
echo $frasi[7];
else if($_SERVER['REQUEST_TIME']-$time > 60*30) se son passati altri 30 minuti mostro la frase 8
echo $frasi[8];
else //altrimenti, mostro la frase 0
echo $frasi[0];
}
?>
-
Non hai commentato:
Codice PHP:
else if($_SERVER['REQUEST_TIME']-$time > 60*30) se son passati altri 30 minuti mostro la frase 8
Ciao!
-