Προς το περιεχόμενο

php + mysql format ημερομηνίας


heavyaris

Προτεινόμενες αναρτήσεις

Δημοσ.

καλησπέρα, θα ήθελα να ρωτήσω το εξής:

σε μια φόρμα οπού καταχωρούνται άρθρα, ένα text field, θα πρέπει να παίρνει αυτόματα την ημερομηνία (προ-συμπληρωμένο δηλαδή) που πληκτρολογήθηκε το άρθρο και όταν πατάει ο χρήστης το submit να αποθηκεύεται και αυτο στη βάση.

θέλω λοιπόν να καταχωρείται η ημερομηνία, με format το οποίο να "καταλαβαίνει" η βάση και να δηλώσω το συγκεκριμένο πεδίο σαν πεδίο ημερομηνίας, ώστε μετά να στοιχίζω τα άρθρα με βάση την ημερομηνία.

και το λέω αυτό γιατί από ότι θυμάμαι η mysql χρησιμοποιεί το αμερικάνικο format, πρώτα ο μήνας και μετά η μέρα, ενώ εγώ πρέπει να χρησιμοποιήσω το ελληνικό - 20/12/2010.

τι μπορώ να κάνω;

ευχαριστώ.

Δημοσ.

>$datearray = explode('/', $date);
$swldate = $datearray[2].'-'.$datearray[1].'-'.$datearray[0];

Το παραπάνω παίρνει μια ημερομηνία ($date) και την χωρίζει όπου βρίσκει "/". Στην συνέχεια σε μια νέα μεταβλητή βάζεις τα στοιχεία του πίνακα ($datearray) με ανάποδη σειρά. Πλέον έχεις ημερομηνία του στυλ 2010-12-20 (yyyy-mm-dd).

Δημοσ.

ευχαριστώ για την απάντηση, αυτός από ότι κατάλαβα είναι ο τρόπος που θα το ανεβάζω στην mysql, ο τρόπος εμφάνισης της ημερομηνίας όμως; ώστε να βάλω τον κώδικα στο text field.

να 'σαι καλα

Δημοσ.

ευχαριστώ πάρα πολυ!

 

η ημερομηνία πρέπει να φαίνεται στον συντάκτη με τον "ελληνικο" τρόπο, αλλά να αποθηκέυεται με τον "αμερικάνικο", αργότερα όταν θα μαζευτούν τα άρθρα και θα εμφανίζονται στοιχησμένα ανα ημερομηνία, θα πρέπει πάλι να είναι με τον "ελληνικό" τρόποpost-145960-0-80215500-1292880280_thumb.jpg

Δημοσ.

Καλύτερα να αποθηκεύεις την ημερομηνία/ώρα ως timestamp και να κάνεις τις μετατροπές στην PHP.

 

Αυτό ακριβώς... Ένα πεδίο timestamp είναι ακριβώς αυτό που ζητάς.

Δημοσ.

Έστω ότι $row->date η ημερομηνία που διαβάζεις από την βάση σου, την μετατρέπεις σε ότι format θέλεις χρησιμοποιώντας την date(), για παράδειγμα echo date('Y/m/d', $row->date).

Δημοσ.

χμ.. σκάλωσα πάλι, ίσως δεν το περιέγραψα καλα..

στο παραπάνω screenshot, στο πεδίο της ημερομηνίας, δεν θα φαίνεται απλά η ημερομηνία, αλλά θα το αλλάζει ο χρήστης, μιας και πρόκειται για την ημερομηνία που επιθυμει να εμφανιστεί το άρθρο και ΟΧΙ ημερομηνία συγγραφής του άρθρου (αυτή την παίρνει η mysql αυτόματα)..

 

άρα στην ουσία πρόκειται για απλό κείμενο, που αυτό πρέπει να μετατραπεί σε "αμερικάνικο" format όταν θα ανέβει στην βάση..

 

πολύ μπλέξιμο, ίσως καλύτερα να βάλω ένα ημερολογιάκι να ησυχάσω..!

Δημοσ.
πολύ μπλέξιμο, ίσως καλύτερα να βάλω ένα ημερολογιάκι να ησυχάσω..!

 

Αυτό έπρεπε να είχες κάνει, γιατί εγώ αυτό κατάλαβα πως έχεις.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...