Date in php

Monital

Utente Attivo
15 Apr 2009
778
2
18
salve a tutti

ho un piccolo quesito

c'è qualcosa ch3e non mi torna

sto creando un sistema ad orario cioè quando la data odierna è maggiore o minore ad una data prefissata los cript deve fare questo o quello

allora

ho ragionato cosi

recupero il numero della data odierna
PHP:
date();
$datan=date ("H,i,s,m,d,Y");
$datax=mktime($datan);

ora che scrivo mi restituisce " 1296376753" e sono le 9,39.13

se provo a mettere una data antecedente a questa ad esempio

PHP:
date();
$data=date ("23,45,59,12,29,2010");
$dataf=mktime($data);

mi restituisce "1296427153"

ora 1296427153 è maggiore a 1296376753 mentre non dovrebbe essere così dato che il 29 Gennaio è inferiore al 30 Gennaio

dato che devo eseguire una serie di if dove

PHP:
if dataf<$datax .........esegui lo script

provando però a mettere al 31 gennaio mi esce un numero maggiore a quello del 30

cosa mi sfugge della questione?

ho cercato in giro ma non ho trovato niente al riguardo, o perlomeno niente che mis erve

magari è sbagliata la funzione mktime?
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ciao
cosi ad occhio e croce non sbagli mktime, ma a scrivere
$data=date ("23,45,59,12,29,2010");
i paramentri 23,45, ecc... non sono i parametri con cui si imposta date();
http://it.php.net/manual/en/function.date.php
per cui con quella scrittura chissà cosa ti restituisce

23,45,59 sarebbe l'orario alle ore 23.45.59 scade il termine nella funzione mktime

in realta facevo una prova però la data è impostata così

$data=date ("23:45:59:12:29:2010");

puoi darmi un suggerimento su come impostare sta cosa?
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
No, forse non hai capito. La funzione date non accetta una data in input. Nel tuo caso devi usare direttamente mktime. Prova così:
PHP:
<?php
// giorno attuale, ore 23:49:50
$time = mktime(23, 45, 59, date('d'), date('m'), date('Y'));

// se ancora non sono le 23:49:50
if(time() < $time)
{
	// esegui lo script
}
?>
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ho fatto delle prova
al posto di mktime() prova ad usare strttime() , in questo caso però devi impostare le date nel formato americano
es. aaaa-mm-dd HH:ii:ss -> 2011-01-29 12:02:32
quarda questo esempio:

PHP:
<?php
$datan=date("Y-m-d H:i:s");//formato americano
var_dump($datan);echo "Xu<br>";//data attuale formato americano (umano)
$datanTS=strtotime($datan);//la porto in time stamp
var_dump($datanTS);echo "Xt<br>";//data attuale formato timestamp
echo "riprova ".date("Y-m-d H:i:s",$datanTS)." Xu<br>";//riprovo a convertire
$dataf="2011-01-29 12:02:32";//imposto una data in formato americano (umano)
var_dump($dataf);echo "Fu<br>";//data impostata formato americano (umano)
$datafTS=strtotime($dataf);//la porto in time stamp
var_dump($datafTS);echo "Ft<br>";//data impostata formato timestamp
echo "riprova ".date("Y-m-d H:i:s",$datafTS)." Fu<br>";//riprovo a convertire
//e qui l'if
if($datanTS >= $datafTS){
	echo "la data attuale è maggiore o uguale all'impostata<br>";
}else{
	echo "la data attuale è minore dell'impostata<br>";
}
?>
modificando $dataf vedrai che l'if-else funzia

p.s.
ho riprovato anche con mktime, ma c'è qualcosa che non mi torna
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao solare
di preciso non so neanch'io
ma facendo due volte mktime() il valore era sempre uguale come indicava nel primo post monital, anche scrivendo le stringhe giuste
 
Discussioni simili
Autore Titolo Forum Risposte Data
P [PHP] Input Type="date" non va correttamente con Apple PHP 2
maxnegri [PHP]Funzione di calcolo prezzo di una camera in un range di date PHP 62
maxnegri Conoscere giorni della settimana fra due date con php PHP 2
P [PHP] Calcolo prezzi camera in range di date diverse PHP 11
M [PHP] Convertire date da americana a italiana direttamente nel db PHP 6
trattorino [PHP] prelevare minuti da date confrontate PHP 2
Emix [PHP] Differenza Date + Ore PHP 3
napuleone [PHP] Ho la settimana e l'anno cerco le date PHP 4
gandalf1959 Selezionare un intervallo tra due date, php e mysql PHP 2
valvasori [PHP] Proble di date PHP 14
M [PHP] Date(time) PHP 2
J Confronto Date PHP - MySQL PHP 1
D calcolo fra date php PHP 2
S Problema con date in php PHP 2
V Calcolare la differenza tra due date in PHP PHP 1
L php date - "scritto 15 minuti fa..." etc.. PHP 13
L Date e calendari con php PHP 1
K [PHP/MYSQL] Uno storico trasporti e comparazioni di date, sono totalmente bloccato. PHP 2
I Le Famigerate Date del PHP. PHP 12
M [PHP] calendario con eventi problema con date PHP 9
ElfoDelBasket [mysql/php] formattare le date PHP 2
O per Easy PHP mi date un consiglio ? PHP 1
T Query con date MS Access 1
MarcoGrazia Calcolo fra due date con esclusione delle feste PHP 7
S Differenza date record successivi MS Access 7
E Format Date PHP 37
napuleone Con le date il codice da di matto o forse non è così Javascript 6
napuleone Con le date mi da di matto o forse è proprio così jQuery 1
elpirata Impedire inserimento data di oggi e date passate jQuery 39
A attributo "min" per input gestione date PHP 8
Alex_70 Javascript date color Javascript 3
FabioJ Formattazione date openoffice calc Linux e Software 0
O query con date in formato stringa PHP 3
F Creare un set di date a seconda del frazionamento scelto da inserire in MySQL PHP 6
S aggiungere colonna date in una tabella già esistente Database 0
A [Java]Date diminuite di un giorno su db MySQL Java 0
V [MySQL] problema query con date su server MySQL 5
S [HTML] Problema <input type="date"> HTML e CSS 0
Daniele_Carrara [Javascript] Modifica input date Javascript 5
Licantropo [MySQL] Cambiare le date MySQL 4
MarcoGrazia campo con autocompletamento a formato multiplo (nomi/date) jQuery 3
diego66 [Javascript] Calcolare giorni lavorativi comprese tra due date Javascript 0
filippino Chiavi a corrispondenza inversa per i risultati organici? (Era: come NON farsi trovare con date chia SEO e Posizionamento 4
S funzioni per calcoli sulle date PHP 4
G Tabella con date PHP 9
felino [MySQL][phpMyAdmin] Convertire colonna da VARCHAR a DATE MySQL 3
M Limit DATE PHP 6
V Date e operazioni aritmetiche PHP 13
A Problema con "explode" su campo date PHP 9
V date mysql MySQL 0

Discussioni simili