Forum cookie problema php

angel

Utente Attivo
2 Nov 2009
109
0
0
Ciao ragazzi sono ad buon punto con la creazione del mio forum.....
ce un problema e non so bene come spiegare....

quando visitate
http://forum.mrwebmaster.it/php/

ci sono dei collegamenti tutti in grassetto se ne visiti uno e poi torni alla pagina
http://forum.mrwebmaster.it/php/
vedi che non e più in grassetto ma diventato un collegamento normale rispetto agli altri come posso fare.....
una cosa del genere......
 
Il sistema funziona dovrebbe funzionare così, se un post non è stato letto dall'utente loggatto allora viene restituito in grassetto; una soluzione potrebbe essere inserire in tabella un campo '0','1' (enum) che non diventa '1' finché l'utente non legge il post, se il campo è '0' il post viene stampato in grassetto.
 
si ma se qualcuno inserisce un nuovo messaggio non dovrebbe diventare di nuovo non letto dal utente....
io pensavo di usare i cookie ma non ho idea.....

p.s.
sai dirmi se ce una soluzione veloce per fare la differenza di due date...
<?php
$data1=date("d-m-y G:i", time());
$data2=date("d-m-y G:i", $risultato['data']);
$data3=$data2-$data1;
echo $data3;
?>
 
si ba be e come si dovrebbe impostare la tabella secondo te...
pensa a tutti gli utenti a tutte le discussioni .....
 
E per ogni post segni tutti gli utenti che l'hanno letto o no? E se hai 10000 utenti? 10000 zero o uno? Mi sono sempre chiesto, in effetti, come fosse possibile fare una cosa del genere. Credo che non sia una cosa assoluta ma che si usino i cookie. Infatti se per qualche giorno non visito il forum non mi da post nuovi...
 
basterebbe una semplice tabella che rechi gli id dei post, gli id degli utenti loggati e il campo enum; poi i record possono essere anche 1 milione, fa poca differenza..
 
i normali forum come fanno.....
se andate http://forum.mrwebmaster.it/fare-web/
vedete per ogni tipo di discussione ce un immagine diversa

immagine Contiene nuovi messaggi Forum con nuovi messaggi
immagine Non contiene nuovi messaggi Forum senza nuovi messaggi
 
Ma dai?! Caspita! :D
Intendevo dire come fanno a capire se hai già letto un messaggio oppure no. Non credo che salvino per ogni messaggio se l'hai letto o no, perché alla fine arriveresti ad avere un database mastodontico...
 
Ma dai?! Caspita! :D
Intendevo dire come fanno a capire se hai già letto un messaggio oppure no. Non credo che salvino per ogni messaggio se l'hai letto o no, perché alla fine arriveresti ad avere un database mastodontico...
se ci pensi bene non è così, il database sarà comunque mastodontico (nei forum di solito è così), ma in questo caso tutto quello che avrai è una tabella in più.
 
allora ragazzi sinceramente come posso fare....
suggerimenti....
p.s.
devo fare la differenza tra due date come posso fare....
deve stamparmele in minuti superando i 60 minuti dovrei stampare in 1 ora,2 ore, 3 ore ecc
superando le 24 ore dovrebbe stampare il giorno
tipo 06 dicembre alle ore 12.22 ^^
 
ciao
devo fare la differenza tra due date come posso fare....
prova questa funzione

PHP:
<?php
//$dif intero da date tipo timestamp, quindi $dif espresso in secondi
function diff_data($dif){
	$differenza="sono trascorsi ";
	$giorni=$dif/(24*60*60);//giorni decimali
	$gg=(int)$giorni;//numero intero di giorni
	$ore=($giorni-$gg)*24;//ore decimali
	$h=(int)$ore;//numero intero di ore
	$minuti=($ore-$h)*60;//minuti decimali
	$min=(int)$minuti;//minuti intero
	$secondi=($minuti-$min)*60;//secondi decimali
	$sec=(int)$secondi;//secondi intero, oppure usare arrotondamento
	if($gg > 0){
		$differenza .= $gg."gg ";
	}
	if($h > 0){
		$differenza .= $h."h ";
	}
	if($min > 0){
		$differenza .= $min."' ";
	}
	if($sec > 0){
		$differenza .= $sec."\" ";
	}
	return $differenza;
}
//prova di funzionamento
$oggi=time();
// fra 3 gg 2 ore 25 min e 47 secondi
$tra=$oggi+3*(24*60*60)+2*(60*60)+25*60+47;

echo "oggi è il ". date("d F Y H:i:s", $oggi)."<br>";
echo "e sarà il ". date("d F Y H:i:s", $tra)."<br>";
$differenza=$tra-$oggi;
echo "<br>".diff_data($differenza)."<br>";
?>
 
@borgoitalia:
io prendo una data dal db e devo fare la differenza tra la data di oggi e la data salvata nel db....
deve stamparmele in minuti superando i 60 minuti dovrei stampare in 1 ora,2 ore, 3 ore ecc
superando le 24 ore dovrebbe stampare il giorno
tipo 06 dicembre alle ore 12.22 ^^
 

Discussioni simili