Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Con la prima rete 5G Standalone attiva in Italia, WINDTRE compie un passo decisivo verso un modello di connettività intelligente che abilita scenari avanzati per imprese e pubbliche amministrazioni, trasformando la rete da infrastruttura a piattaforma per servizi a valore aggiunto
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro punta a diventare uno dei riferimenti assoluti nel segmento dei camera phone di fascia alta. Con un teleobiettivo Hasselblad da 200 MP, una batteria al silicio-carbonio da 7500 mAh e un display da 6,78 pollici con cornici ultra ridotte, il nuovo flagship non teme confronti con la concorrenza, e non solo nel comparto fotografico mobile. La dotazione tecnica include il processore MediaTek Dimensity 9500, certificazione IP69 e un sistema di ricarica rapida a 80W
DJI Romo, il robot aspirapolvere tutto trasparente
DJI Romo, il robot aspirapolvere tutto trasparente
Anche DJI entra nel panorama delle aziende che propongono una soluzione per la pulizia di casa, facendo leva sulla propria esperienza legata alla mappatura degli ambienti e all'evitamento di ostacoli maturata nel mondo dei droni. Romo è un robot preciso ed efficace, dal design decisamente originale e unico ma che richiede per questo un costo d'acquisto molto elevato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-11-2009, 08:33   #1
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
[PHP]problema con le date

ciao a tutti!!

ho un problema, vorrei inserire tramite un form una data formato europeo, ma si sa che mysql accetta o un datetime o una data in formato inglese.
il mio problema è tradurre la data europea in quella inglese, e se possibile, al momento della stampa, ritornare a quella europea...
grazie mille!!!

Cruyffissimo
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:39   #2
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da cruyffissimo Guarda i messaggi
ciao a tutti!!

ho un problema, vorrei inserire tramite un form una data formato europeo, ma si sa che mysql accetta o un datetime o una data in formato inglese.
il mio problema è tradurre la data europea in quella inglese, e se possibile, al momento della stampa, ritornare a quella europea...
grazie mille!!!

Cruyffissimo
Cosa intendi per data europea? Del tipo 6 Nov 2009 ?
MySQL accetta DATE, DATETIME e TIMESTAMP; puoi poi convertire questi tre formati in una data 'Human Like'
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:45   #3
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
si, intendo gg/mm/aaaa..
esatto, ma non so farlo!
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:59   #4
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da cruyffissimo Guarda i messaggi
si, intendo gg/mm/aaaa..
esatto, ma non so farlo!
Poi mi dici dove hai preso il pupazzo, che lo voglio!
Allora hai varie strade da seguire:

a) memorizzi la data in TIMESTAMP (Int 32) e con la funzione date() di php ti ritorni la stringa della data formattata come vuoi, esempio:

Codice:
date("%d %M %Y, $timestamp_da_db);
Ti tornerà qualcosa del tipo GG MM AAAA; maggiori dettagli qui: http://www.php.net/manual/en/function.date.php.

Occhio che il timestamp misura i secondi passati dalla mezzanotte del 1 gennaio 1970 sui sistemi *NIX.

b) memorizzi la data in formato stringa, attraverso la funzione date() e sei a posto, esempio:

Codice:
date("%d %M %Y, time());(
Ovvero nel db ci finisce direttamente la stringa formattata.
Occhio a non confondere con il caso prima che nel db hai un intero.

c) utilizzi la funzione gmdate() per ottenere, come sopra, una data da timestamp in formato GMT/UTC (molto comoda, non so se fa a caso tuo); link: http://www.php.net/manual/en/function.gmdate.php

d) utilizzi la funzione strtotime() che converte, se non ricordo male, la datetime di mysql in unixtimestamp... che poi converti in data con date() o gmdate()

Penso ti possano bastare
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 09:38   #5
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
ehi grazie!!!!

e sapessi...XD

dopo ti posto come ho invertito le posizioni di gg-mm-aaaa...

grazie mille ancora


Cruyffissimo
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 09:42   #6
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da cruyffissimo Guarda i messaggi
ehi grazie!!!!

e sapessi...XD

dopo ti posto come ho invertito le posizioni di gg-mm-aaaa...

grazie mille ancora


Cruyffissimo
Va bene, valuta tu quale strada prendere
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 09:51   #7
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
Codice PHP:
list($giorno,$mese,$anno)=explode("/"$data_formato_europeo);
$data_formato_inglese=$anno."/".$mese."/".$giorno
con $data_formato_europeo indico la data che inserisco dal form, e con data_formato_inglese indico la data nel formato come vuol il DB...
cmq il pupazzetto non ce l'ho, è una foto...ma lo sto cercando anche io!!!!
ma non lo trovo!!

Cruyffissimo
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 10:05   #8
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
posso darti un consiglio?
se il form è accessibile da chiunque io non darei per scontato che il separatore usato sia per forza lo slash, molta gente usa il trattino e raramente mi è capitato di vedere il puntino.

P.S.: una precisazione, il formato che usi tu non è quello inglese ma quello ISO, il formato inglese è mm/dd/yyyy

ciao
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 10:18   #9
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da kurts Guarda i messaggi
posso darti un consiglio?
se il form è accessibile da chiunque io non darei per scontato che il separatore usato sia per forza lo slash, molta gente usa il trattino e raramente mi è capitato di vedere il puntino.

P.S.: una precisazione, il formato che usi tu non è quello inglese ma quello ISO, il formato inglese è mm/dd/yyyy

ciao
Si se la data proviene da un FORM è buona cosa pensare ad un cast del formato data, ovvero obbligare l'utente ad inserire la data in un certo modo oppure forzare la data tramite select, con lo str_replace, ecc... (ci sono centinaia di soluzioni a mio parere).
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 10:27   #10
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
io per evitare tutti questi controlli solitamente creo 3 campi distinti: giorno, mese, anno.

mi rendo conto che è una cosa un po' grezza ma il suo lavoro lo fa.

un'altra cosa che mi ero dimenticato prima, controlla sempre le date tipo "31 febbraio" o cose simili, a questo scopo esistono gia delle funzioni belle pronte che ti risparmiano tutto il lavoro
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 10:56   #11
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da kurts Guarda i messaggi
io per evitare tutti questi controlli solitamente creo 3 campi distinti: giorno, mese, anno.

mi rendo conto che è una cosa un po' grezza ma il suo lavoro lo fa.

un'altra cosa che mi ero dimenticato prima, controlla sempre le date tipo "31 febbraio" o cose simili, a questo scopo esistono gia delle funzioni belle pronte che ti risparmiano tutto il lavoro
Anche io
Se no uso il mitico JQuery UI DatePicker... stupendo!
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 20:12   #12
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
Se no uso il mitico JQuery UI DatePicker... stupendo!
essì, ormai è ora che anche io mi studi un po' di JS, dovrò cercare di ignorare il mio atavico ribrezzo nei confronti dei linguaggi di scripting lato client, vedrò cosa posso fare
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 20:14   #13
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
si funziona anche con tre campi, ma a livello di codice si complica largamente la gestione del controllo...
insomma:
Codice PHP:
list($gg,$mm,$aa)=explode("-"$data);
if(!
checkdate($mm,$gg,$aa))
{
    echo 
"data non valida!<br>";
    
$flag=0;
}
else
{
    
$data=$aa."/".$mm."/".$gg;

all'inizio il campo data è quello che viene preso in input tramite un $_POST e poi per risparmiare memoria, lo si formatta,se valida la data in input, secondo il formato del database...
la discussione del separatore non esiste, o meglio, basta imporre che siano valide date solo con - o /...
io ho messo - perchè nel database voleva il - ma nulla mi vietava di mettere un str_replace
Codice PHP:
$data=str_replace("/","-","$data"); 
cioè poi ognuno lo fa come gli pare...
io l'ho fatto così perchè è meno incasinato...XD

grazie a tutti...



Cruyffissimo
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 20:17   #14
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
sono abbastanza sicuro che mysql sia abbastanza astuto da rimpiazzare automaticamente i separatori con il simbolo -
ripeto, abbastanza, non del tutto...
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 20:20   #15
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da kurts Guarda i messaggi
essì, ormai è ora che anche io mi studi un po' di JS, dovrò cercare di ignorare il mio atavico ribrezzo nei confronti dei linguaggi di scripting lato client, vedrò cosa posso fare
Fino a 3 anni fa pure io lo odiavo... ma oggi non posso farne a meno (anche se non ci vado tutt'ora d'accordo).

Per MySQL... non ne sarei così sicuro
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2009, 12:51   #16
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
no infatti devi inserirlo con i / ma puoi sempre cambiarli con str_replace, se vuoi farlo più figo fai la ricerca per carattere, e a seconda se ci sono - o i / fai il tuo str_replace...
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi Wind Tre 'accende' il 5G Standalone in Italia: s...
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh OPPO Find X9 Pro: il camera phone con teleobiett...
DJI Romo, il robot aspirapolvere tutto trasparente DJI Romo, il robot aspirapolvere tutto trasparen...
DJI Osmo Nano: la piccola fotocamera alla prova sul campo DJI Osmo Nano: la piccola fotocamera alla prova ...
FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
Oltre le GPU: NVIDIA annuncia NVQLink, ...
Samsung lancia il Team Galaxy Italia per...
Magic Leap: indistinguibili dai normali ...
Aruba Cloud: trasparenza sui costi e str...
Quando il cloud si blocca e resti al fre...
Integrare per competere, la sfida digita...
Leggenda del rally e modernità: S...
La Python Software Foundation rinuncia a...
Full HD e QLED, è in offerta un TV da 32...
Honda ha rilasciato un nuovo video sul p...
Resident Evil Requiem: arriva su Switch ...
Marshall Acton III in promo su Amazon in...
2 portatili che costano poco ma vanno be...
Smartphone potenti sotto i 300€: ecco i ...
28 Offerte Amazon da non perdere: smartp...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v