• Home
  • Forum
  • Fare Web
  • PHP

Forum cookie problema php

  • Creatore Discussione Creatore Discussione angel
  • Data di inizio Data di inizio 7 Dic 2009
  • Tag Tag
    enum
Prec.
  • 1
  • 2
Primo Prec. 2 di 2

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 13 Dic 2009
  • #21
ciao
io prendo una data dal db e devo fare la differenza tra la data di oggi e la data salvata nel db....
Clicca per allargare...
quale è il formato delle due date? spero che utilizzi il timestamp perchè per fare la differenza tra due date è quello che si presta meglio.

la funzione stampa i gg le ore i min es i sec di differenza.
cosa vuoi dire con
tipo 06 dicembre alle ore 12.22
Clicca per allargare...
?

che se sono passate pià di 24 ore deve scrivere la data del db?
 
A

angel

Utente Attivo
2 Nov 2009
109
0
0
  • 13 Dic 2009
  • #22
la data la salvo cosi...
PHP:
1260686369
che se sono passate pià di 24 ore deve scrivere la data del db?
si
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 14 Dic 2009
  • #23
ciao
la data la salvo cosi...
Codice PHP:
1260686369
Clicca per allargare...
allora per fortuna è in timestamp.
però scusa non ho capito una cosa
tu hai nel db una data (corrisponde alla data di inserimento del post?),chiamiamola $data_post, e vorresti che in funzione della data in cui vado a vedere il post (chiamamola $data_oggi):
se vado a vedere entro le 24 ore venga stampato ($data_oggi - $data_post)
scritto 17h 35' fa'
e se superi le 24 ore (es.)
scritto il 22 dic 2009 alle ore 17:22
?
oppure che la $data_oggi vada a sostituire $data_post superate le 24 ore?
 
A

angel

Utente Attivo
2 Nov 2009
109
0
0
  • 14 Dic 2009
  • #24
devo fare la differenza tra la data di oggi meno quella inserita nel db...

se il risultato e entro 60 minuti stampa i minuti
35 minuti fa
se il risultato supera i 60 minuti e non supera le 24 ore stampa i ore
tipo
2 ora fa
se il risultato supera le 24 ora stampa tipo
06 dicembre alle ore 12.22

pero queste cose minuti ore ecc...
e il risultato della differenza tra le date^^
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 14 Dic 2009
  • #25
ciao
ribadisco, cosa rappresenta quel
06 dicembre alle ore 12.22
Clicca per allargare...
è la data che hai nel db?
 
A

angel

Utente Attivo
2 Nov 2009
109
0
0
  • 14 Dic 2009
  • #26
la data stampata usando tipo date("d-m-y G:i",
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 14 Dic 2009
  • #27
ciao
la data stampata usando tipo date("d-m-y G:i",
Clicca per allargare...
guarda che sin qui non ci piove.
quello che volevo sapere: da dove viene quella data, dal db? non certo dalla differenza di date.
 
A

angel

Utente Attivo
2 Nov 2009
109
0
0
  • 14 Dic 2009
  • #28
no scusa stavo sbagliando volevo dire che superando le 24 ore stampa la data....
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 14 Dic 2009
  • #29
ciao
ok, ma quale data?
quella che viene dal db o quella attuale?
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 14 Dic 2009
  • #30
Mi sembra che qui ci sia qualche piccolissimo problema di comunicazione, signori
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 14 Dic 2009
  • #31
ciao per alex
strano a dirsi, ma sembra che tu abbia ragione
 
A

angel

Utente Attivo
2 Nov 2009
109
0
0
  • 15 Dic 2009
  • #32
ti spiego meglio cosa devo fare...
io ho una data nel db....

allora
se siamo entro i sessanta secondi dal inserimento della data (ciò la differenza tra la data attuale e quella del db)
deve scrivere
"numero sec fà"
se supera i sessanta secondi e non supera i sessanta minuti dal inserimento della data (ciò la differenza tra la data attuale e quella del db)
deve scrivere
"numero minut fà"
se supera i sessata minuti e non supera le 24 ore dal inserimento della data (ciò la differenza tra la data attuale e quella del db)
deve scrivere
"numero ore fà"
se il risultato della differenza tra la data attuale e quella del db supera le 24 ore stampa la data normale
06 dicembre alle ore 12.22
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Dic 2009
  • #33
ciao
avevo capito tutto, ma non mi hai ancora detto quale data "normale". è quella che hai nel db o qualle attuale.
spiego:
la differenza è $data_attuale - $data_da_db e se ecc...., quello che non mi hai ancora detto quale data vuoi che stampi "normale"?

comunque nel prossimo post ti invio un codice, poi se vuoi l'una o l'altra sostituisci il valore dove ti indico
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Dic 2009
  • #34
ciao
ecco lo script

PHP:
<?php
//$data_da_db intero da date tipo timestamp, quindi $dat_da_db espresso in secondi
function diff_data($data_da_db){
	$adesso=time();//legge la data nel momento di apertura del post
	$differenza=$adesso-$data_da_db;//in secondi
	//trasformo in ore arrotondando
	$giorni=floor($differenza/(24*60*60));//giorni possono essere >=1
	if($giorni >= 1){//sono passate più di 24 ore
		$mese=array('Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre');
		//se vuoi la data che proviene dal db usa le due righe qui sotto
		$mese_int=date(n,$data_da_db)-1;//serve per l'array dei mesi in italiano
		return "scritto il ".date("d", $data_da_db)." ".$mese[$mese_int]." ".date("Y", $data_da_db)." alle ore ".date("H:i", $data_da_db);
		//altrimenti o le commenti o cancelli e decommenti le seguenti
		//$mese_int=date(n,$adesso)-1;
		//return "scritto il ".date("d", $adesso)." ".$mese[$mese_int]." ".date("Y", $adesso)." alle ore ".date("H:i", $adesso);
	}else{//le ore sono meno di 24
		$ore=floor($differenza/(60*60));
		if($ore >= 1){//le ore sono piu di una ma meno di 24
			$testo=" ore fa'";
			if($ore ==1){$testo=" ora fa'";}
			return "scritto ".$ore.$testo;//stampa ore fa'
		}else{//le ore sono meno di 1
			$minuti=floor($differenza/60);
			if ($minuti >= 1){//i minuti sono piu di uno
				$testo=" minuti fa'";
				if($minuti==1){$testo=" minuto fa'";}
				return "scritto ".$minuti.$testo;//stampa minuti fa'
			}else{//sono meno di un minuto
				$testo=" secondi fa'";
				$secondi=round($differenza);//anche se non servirebbe
				if($secondi==1){$testo=" secondo fa'";}
				return "scritto ".$secondi.$testo;//stampa secondi fa'
			}//fine if minuti
		}//fine if ore
	}//fine if giorni
}//fine function

/*
prova di funzionamento
da sostituire con quello che serve, estrazione della data dal db
*/
//
$oggi=time();//solo per valutare il tempo per prove
// scritto 5 gg 4 ore 37 min e 5 secondi fa'
$scritto=$oggi-5*(24*60*60)-4*(60*60)-37*60-5;//riga GIORNI
// scritto 4 ore 37 min e 5 secondi fa'
//$scritto=$oggi-4*(60*60)-37*60-5;//riga ORE
// scritto 37 min e 5 secondi fa'
//$scritto=$oggi-37*60-5;//riga MINUTI
// scritto  5 secondi fa'
//$scritto=$oggi-5;//riga SECONDI
echo "oggi è il ". date("d F Y H:i:s", $oggi)."<br>";
echo "il post era stato scritto il ". date("d F Y H:i:s", $scritto)."<br>";
/*
FUNZIONE PER SCRIVERE IL TEMPO PASSATO
se dif < 60 sec stampa (es.): scritto 5" fa'
se dif > 1 e < 60 min: scritto 25' fa'
se dif > 1 e < 24 ore: scritto 1 ora fa'
se diff > 24 ore stampa la data nel formato: scritto il gg mese anno alle ore H:MIN
*/
echo "<br>".diff_data($scritto)."<br>";
?>

spero che soddisfi le tue esigenze (e alessandro)
credo che i commenti che ho messo sia sufficienti a capire il funzionamento
 
A

angel

Utente Attivo
2 Nov 2009
109
0
0
  • 15 Dic 2009
  • #35
da errore...
qua
function diff_data($data_da_db){
Fatal error: Cannot redeclare diff_data() (previously declared in


e qua
$mese_int=date(n,$data_da_db)-1;//serve per l'array dei mesi in italiano
Fatal error: Cannot redeclare diff_data() (previously declared in
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 15 Dic 2009
  • #36
Tu e l'Inglese non siete molto compatibili, vero? Imparare ad interpretare gli errori di PHP è la prima cosa che bisognerebbe fare quando si inizia a programmare. Comunque lì c'è scritto che non puoi dichiarare due volte una funzione, quindi i casi sono due:
Hai già una funzione diff_data() precedente.
Includi due volte il file che contiene la funzione diff_data().
Scegline una, gira la ruota oppure compra una vocale!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Dic 2009
  • #37
ciao
Tu e l'Inglese non .......
Hai già una funzione diff_data() precedente.
......
Clicca per allargare...
penso che sia questo, precedentemente avevo postato un'altra funzione mi sembra con lo stesso nome
o cme dice alex modifichi il nome ad una (es. dif_dat()) o quella che non ti serve la elimini.
 
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
Devi accedere o registrarti per poter rispondere.

Discussioni simili

Legge sui Cookie e Forum phpBB
  • Gabriele Visioli
  • 10 Mag 2015
  • phpBB
Risposte
0
Visite
3K
phpBB 10 Mag 2015
Gabriele Visioli
A
Ciao a tutto il forum
  • Azimut
  • 9 Dic 2024
  • Presentati al Forum
Risposte
1
Visite
281
Presentati al Forum 10 Dic 2024
WmbertSea
C
ciao a tutto il forum
  • Cesare Briglia
  • 30 Lug 2024
  • Presentati al Forum
Risposte
1
Visite
592
Presentati al Forum 30 Lug 2024
WmbertSea
B
un saluto ai lettori del forum
  • BuyWiseBuyBetter
  • 25 Lug 2024
  • Presentati al Forum
Risposte
0
Visite
254
Presentati al Forum 25 Lug 2024
BuyWiseBuyBetter
B
A
Cerco programmatore/sviluppatore per creare forum
  • Alsi
  • 9 Lug 2023
  • Offerte e Richieste di Lavoro e/o Collaborazione
Risposte
3
Visite
5K
Offerte e Richieste di Lavoro e/o Collaborazione 17 Mag 2024
Riminese
R
G
Consiglio su piattaforma forum da utilizzare
  • greg2020
  • 4 Ago 2021
  • CMS (Content Management System)
Risposte
1
Visite
2K
CMS (Content Management System) 25 Nov 2021
Daygo78
D
G
Forum newby
  • Giulia2021
  • 24 Lug 2021
  • Presentati al Forum
Risposte
0
Visite
457
Presentati al Forum 24 Lug 2021
Giulia2021
G
A
Buongiorno Forum
  • Antares62
  • 12 Mar 2021
  • Presentati al Forum
Risposte
0
Visite
526
Presentati al Forum 12 Mar 2021
Antares62
A
S
SEOriented è entrato nel forum
  • SEOriented
  • 8 Feb 2021
  • Presentati al Forum
Risposte
0
Visite
496
Presentati al Forum 8 Feb 2021
SEOriented
S
V
Mi presento al forum
  • V1nc3nz0
  • 26 Ago 2020
  • Presentati al Forum
Risposte
1
Visite
764
Presentati al Forum 26 Ago 2020
Max 1
C
Saluti a tutti gli utenti del Forum
  • Consulenze.instagram
  • 12 Mag 2020
  • Presentati al Forum
Risposte
0
Visite
797
Presentati al Forum 12 Mag 2020
Consulenze.instagram
C
Saluto a tutti i membri del forum
  • Mastiff_84
  • 10 Apr 2020
  • Presentati al Forum
Risposte
1
Visite
783
Presentati al Forum 10 Apr 2020
Max 1
P
Ciao a tutti nel forum
  • PhillipFigueroa
  • 27 Mar 2020
  • Presentati al Forum
Risposte
0
Visite
701
Presentati al Forum 27 Mar 2020
PhillipFigueroa
P
C
[Retribuito] cerco programmatore per realizzare forum phpbb su altervista.
  • corraoto
  • 5 Feb 2020
  • Altri Annunci
Risposte
0
Visite
999
Altri Annunci 5 Feb 2020
corraoto
C
C
[Retribuito] cerco programmatore per realizzare forum phpbb su altervista
  • corraoto
  • 5 Feb 2020
  • Offerte e Richieste di Lavoro e/o Collaborazione
Risposte
0
Visite
2K
Offerte e Richieste di Lavoro e/o Collaborazione 5 Feb 2020
corraoto
C
A
Ciao popolo del forum
  • Albiuno
  • 4 Feb 2020
  • Presentati al Forum
Risposte
0
Visite
804
Presentati al Forum 4 Feb 2020
Albiuno
A
F
Ciao e complimenti per il forum
  • Francescotr
  • 19 Dic 2019
  • Presentati al Forum
Risposte
1
Visite
908
Presentati al Forum 19 Dic 2019
Max 1
Restyling del forum 12/2019 - Critiche, segnalazioni e opinioni
  • marino51
  • 15 Dic 2019
  • Discussioni Varie
Risposte
7
Visite
2K
Discussioni Varie 13 Gen 2020
maxbossi
Ciao, per la prima volta dentro ad un forum
  • MeWeb Marketing
  • 22 Nov 2019
  • Presentati al Forum
Risposte
1
Visite
924
Presentati al Forum 22 Nov 2019
Max 1
Presentazione Forum di marinobruschini
  • marinobruschini
  • 26 Ott 2019
  • Presentati al Forum
Risposte
0
Visite
763
Presentati al Forum 26 Ott 2019
marinobruschini
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?