Differenza data

intimoviro

Utente Attivo
18 Ago 2009
272
0
0
Salve ragazzi, devo calcolare i giorni di cui un prodotto deve essere catalogato come nuovo.

Nel database ho un campo data strutturato così, ad es.: 10/01/2010

lo prelevo e lo inserisco in una variabile, quindi:

$data_inserimento = $r['data_inserimento'];

Poi ho fatto in questo modo per confrontare il valore con la data attuale:

PHP:
$stringa = "$data_inserimento";
list($d, $m, $Y) = split('/', $stringa);
$data_ins = mktime("0","0","0", date("d"), date("m"), date("Y"));

$data_attuale = mktime("0","0","0", date("d"), date("m"), date("Y"));
$giorni_pubbl= intval(($data_ins - $data_attuale) / 86400); 

if ($giorni_pubbl <= 3){
....

Però non ho il risultato sperato, in pratica un prodotto deve essere calcolato come nuovo per 3 giorni, dopo no.

Dove sbaglio?

Grazie:)
 

LaKanka

Utente Attivo
29 Ago 2008
166
0
0
Io utilizzerei questo script:
Se come riferimento hai
$data_inserimento = $r['data_inserimento'];

intanto preleverei i gg i mm e gli aaaa

quindi se il formato è 10/01/2010 quindi gg/mm/aaaa fai
PHP:
$data_inserimento=explode('/', $data_inserimento);
$gg=$data_inserimento[0];
$mm=$data_inserimento[1];
$aaaa=$data_inserimento[2];

ora puoi calcolare la data di 3 giorni dopo:

PHP:
$fine_nuovo=date("d/m/Y",mktime(0,0,0,$mese,$giorno+3,$anno));

Ora hai due stringhe: una con l'inizio e una con la fine del periodo novità.
Magari non è il metodo migliore, ma per la condizione io trasformo le date in interi e le confronto come semplici numeri, nel tuo caso:

PHP:
$data_inizio=intval($aaaa.$mm.$gg);
$data_fine=explode('/', $fine_nuovo);
$gg=$data_fine[0];
$mm=$data_fine[1];
$aaaa=$data_fine[2];
$data_fine=intval($aaaa.$mm.$gg);
$oggi=date("d/m/Y");
$data_oggi=explode('/', $oggi);
$gg=$data_oggi[0];
$mm=$data_oggi[1];
$aaaa=$data_oggi[2];
$data_odierna=intval($aaaa.$mm.$gg);

A questo punto la condizione sarà semplice:

PHP:
if (($data_odierna >= $data_inizio)&&($data_odierna <= $data_fine)) echo "L'articolo è nuovo!!!"

Spero ti sia stato utile, il problema con i campi data sono i vari formati e il fatto che sono trattati come delle stringhe, quindi non puoi farci direttamente il confronto... almeno... io ci sono impazzita alquanto prima di venirne a capo!!!!
 
Discussioni simili
Autore Titolo Forum Risposte Data
S Differenza data PHP 1
E Query differenza tra tabelle MySQL 5
A differenza tra account email e ISP presenti in blacklist Posta Elettronica 0
W Differenza tra orari PHP 3
S Differenza date record successivi MS Access 7
Gabriele Visioli Differenza tra hosting e hosting WordPress Hosting 4
S Differenza tra le funzioni include () e require ()? PHP 1
T differenza fra mysql xampp e un mysql server Database 0
U [PHP] Differenza tra amministratore e utente PHP 2
M PHP Arrotondamento minuti in differenza tra due Orari PHP 9
Emix [PHP] Differenza Date + Ore PHP 3
S [PHP] Eseguire differenza su dati SQL presenti sulla stessa colonna PHP 1
V [PHP] Differenza reale tra bindParam e bindValue PHP 8
K Certificato SSL (https) gratuito o a pagamento? che differenza c'è? Server Dedicati e VPS 1
andrea.peo Calcolo differenza fra record attivo e precedente PHP 1
G Calcolo differenza valori provenienti da una tabella PHP 0
giap Classi stili/stili per singoli TAG- differenza- HTML e CSS 2
Z Google: qual'è la differenza tra Popolarità e Autorevolezza di un sito? SEO e Posizionamento 1
M Qual'è la differenza tra Server.Transfer e Response.Redirect? ASP.NET 1
Giacomo92 Differenza tra Webmaster e Web designer? Webdesign e Grafica 2
V Calcolare la differenza tra due date in PHP PHP 1
V Differenza tra operatori == e === in javascript? Javascript 1
felino [C#] Differenza tra ClipboardPasted e ClipboardPasting .NET Framework 2
F differenza tra 2 date PHP 5
M Calcolare differenza temporale tra datetime salvati sui records di una tabella mysql PHP 18
Monital Differenza tra int smallint etc. Database 5
A Differenza tra anteporre o posporre l'operatore di incremento nel ciclo for Javascript 5
C Ma perchè!!!! Differenza visualizzazione con iOS Safari HTML e CSS 2
Shyson Differenza UTF-8 e gli altri HTML e CSS 12
L Reale differenza con il precedente HTML HTML e CSS 1
C Differenza tra due ore PHP 17
PenguinLover Differenza tra detrazioni e deduzioni? Leggi, Normative e Fisco 3
Monital Differenza tra date PHP 8
YellowMan Differenza tra Server Virtuale e Cloud Server Cloud Computing e Cloud Server 1
M Differenza tra precision e scale PHP 2
novello88 Differenza tra include() e require() PHP 18
M [VB.Net] Che differenza c'è tra CType e DirectCast? ASP.NET 1
S Differenza tra queste righe di codice Javascript 2
N Con Google Crome a differenza di Explore i comandi per la musica non funzionano Javascript 0
S Differenza tra orari sballata! PHP 2
G Differenza fra due date PHP 5
M Differenza tra richiesta sincrona e asincrona Ajax 0
emanuelevt differenza tra $array[]='valore' o array_push($array,'valore') PHP 2
emanuelevt differenza concreta tra array_rand e shuffle PHP 2
SolidSnake4 differenza tra sleep() e microtime() PHP 9
M Differenza tra date e countdown PHP 3
M Differenza tra valori sulla stessa colonna Database 10
A Differenza comportamento tra click mouse e pressione tasto invio Visual Basic 0
borgo italia differenza tra applet e script? Javascript 10
I Differenza tra blog e sito Webdesign e Grafica 12

Discussioni simili