Beste scripters,
Ik ben bezig met een online script om wat gegevens in te voeren en per week op te slaan. Alles werkt behalve de datum.
Nu voer ik die handmatig per dag dus je krijgt:
rij1: zondag 27 september
rij2: maandag 28 september t/m zaterdag.
Ik geef ook een weeknummer in.
Wanneer ik dit gedaan heb sla ik dit blad op. Ik kan aanpassingen doen en dan weer opslaan. Werkt goed maar wil die datum ook automatisch laten verlopen. Kan ik het zo maken dat hij van een object met een waarde (weeknummer) dat hij dan de dagen er meteen neerzet.
ik hoop dat één van jullie een idee heeft.
alvast bedankt voor het meedenken.
mvg,
Ruud
- php datum
-
14-10-2009, 17:14 #1
- Berichten
- 23
- Lid sinds
- 17 Jaar
php datum
-
In de schijnwerper
-
14-10-2009, 17:36 #2
- Berichten
- 47
- Lid sinds
- 15 Jaar
Beste Ruud,
Dat kan.
Teneerste moet je de tijd opslaan in je database op deze manier:
PHP Code:$tijd = time();
PHP Code:$q = mysql_query("SELECT `tijd` FROM `blabla` WHERE `blabla` = '".$blabla."'");
$log = mysql_fetch_assoc( $q );
echo date('j F Y - g:i:s A',$log['tijd']);
echo "<br />";
echo date('j F Y',$log['tijd']);
echo "<br />";
echo date('g:i:s',$log['tijd']);
g:i:s is de tijd uur:minuten:seconden
g-i-s
g/i/s
je kunt dit op alle verschillende soorten manieren laten zien.
Mocht je nog vragen hebben hierover kun je me een bericht sturen en zal ik deze antwoorden in het topic.
Mvg,
T. Brouwer
-
14-10-2009, 17:51 #3
- Berichten
- 1.484
- Lid sinds
- 16 Jaar
@Tim
Nooit gehoord van date_format (zie MySQL date_format())?
Wat jij doet is wel heel erg omslachtig. Eerst een query naar de database om daarna vervolgens met PHP de datum te genereren? Waardeloos! Met date_format (erg bekende functie overigens) kun je de database vragen dit direct voor je te doen.
-
14-10-2009, 17:56 #4
- Berichten
- 47
- Lid sinds
- 15 Jaar
Klopt Arek,
Maar aangezien hij het op meerdere manieren wil laten zien dacht ik dat dit even voor hem de beste manier is wat hij het makkelijkste kon snappen.
-------------------------
Op verzoek van Arek dan maar!:)
PHP Code:$q = mysql_query("SELECT DATE_FORMAT(`tijd`, '%d-%m-%Y') AS `tijd2` FROM `blabla`");
Laatst aangepast door Tim Brouwer : 14-10-2009 om 18:01
-
14-10-2009, 18:02 #5
- Berichten
- 1.484
- Lid sinds
- 16 Jaar
In jouw voorbeeld laat je de SQL een output genereren die je vervolgens format via PHP. Dat is omslachtig omdat de SQL in dit geval direct juist geformat kan zijn waardoor eventuele PHP regels bespaard kunnen worden. Voor de performance dus veel beter. Daarnaast is het niet bepaald professioneel tegenover een andere programmeur als je daarbij laat zien SQL niet goed te ondersteunen.
Ook met MySQL kun je de datum in een keer op verschillende manieren presenteren hoor?
SELECT
date_format(datumveld, 'format') AS `datum1`,
date_format(datumveld, 'andere format') AS `datum2`
FROM tabel
Aanvullend bericht:
Thanks Tim. Zo hoort het, anders leer je een ander weer verkeerde manieren aan. Moet je niet doen!Laatst aangepast door Arek van Schaijk : 14-10-2009 om 18:03 Reden: Automatisch samengevoegd.
-
14-10-2009, 20:30 #6
- Berichten
- 23
- Lid sinds
- 17 Jaar
Thanks heren hier kan ik weer even verder mee.
-
14-10-2009, 20:43 #7
- Berichten
- 47
- Lid sinds
- 15 Jaar
@Arek
Hier geef ik je wel gelijk in,, Dacht weer effe iets te ver maar daarom heb ik ook daarna even het goeie voorbeeld gegeven.
@Ruud
Succes hiermee en mocht je vragen hebben voor het opvragen van de tijd om het veschil te berekenen stuur me dan aub een PM dan zal ik dat vervolgens hier posten.
Mvg,
T. Brouwer
-
14-10-2009, 20:43 #8Particulier
- Berichten
- 2.394
- Lid sinds
- 16 Jaar
Vergeet niet om je veld op te slaan als DATETIME ;-)
-
15-10-2009, 10:46 #9
- Berichten
- 1.484
- Lid sinds
- 16 Jaar
-
15-10-2009, 10:52 #10Particulier
- Berichten
- 2.394
- Lid sinds
- 16 Jaar
Maar, als je hem als YEAR opslaat heb je niet de precieze datum, of wel?
-
15-10-2009, 11:06 #11
- Berichten
- 1.484
- Lid sinds
- 16 Jaar
Dacht al dat deze vraag ging komen. YEAR is in principe een geldige value om in te geven in een DATE_FORMAT omdat het een tijdseenheid bevat. Ik verwacht eerlijk gezegd geen output omdat het type tijdeenheid inderdaad niet voldoende is om een juiste output te parsen. Lege output zonder een foutmelding krijg je dan waarschijnlijk.
In tegendeel tot YEAR zijn de andere veld types wel direct (werkend) te gebruiken in DATE_FORMAT. Ook wanneer je een DATE (zonder tijd) gebruikt en van DATE_FORMAT alsnog een tijd verwacht, ik geloof dat je dan gewoon 00:00 ontvangt bij een format: '%H:%i'.
-
15-10-2009, 13:57 #12Particulier
- Berichten
- 377
- Lid sinds
- 18 Jaar
-
15-10-2009, 13:58 #13
- Berichten
- 1.484
- Lid sinds
- 16 Jaar
Goed opgemerkt!
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic