strtotime functie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Matthijs Vos

Matthijs Vos

10/10/2012 18:48:15
Quote Anchor link
Hallo allemaal,

Ik haal uit een feed een bepaalde tijd, nu zet ik deze met strtotime om naar één getal (als ik het goed heb is dat het verschil tussen 01-01-70 01:00:00 en die tijd) en die sla ik op in de database. Nu probeer ik door
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
date('d-m-y H:i:s', strtotime($time))
?>


Deze om te zetten in een normale tijd, maar nu komt er steeds 01-01-70 01:00:00 uit.

Wat doe ik verkeerd?
 
PHP hulp

PHP hulp

06/11/2024 00:06:43
 
Wouter J

Wouter J

10/10/2012 19:03:15
Quote Anchor link
Sla de datum op in de database als een DATETIME field en sla het dan op in het formaat YYYY-MM-DD HH:MM:SS:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$query
= "
INSERT INTO
    foo(datumveld)
VALUES
    ("
.date('Y-m-d H:i:s', strtotime($feedtime).");
"
;
?>


En haal ze op:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
SELECT
     DATE_FORMAT(datumveld, '%d-%m-%y %H:%i:%s')
FROM
    foo
 
Matthijs Vos

Matthijs Vos

10/10/2012 19:11:18
Quote Anchor link
@wouter als ik dat doe, en ik doe ORDER BY datumveld ASC, gaat hij dan wel goed orderen? dus dat hij dan de tijd die het hoogst is (dichst bij de momentele tijd) boven aan zet?
 
Wouter J

Wouter J

10/10/2012 19:12:58
Quote Anchor link
Als het goed is wel, al moet je wel DESC gebruiken: http://sqlfiddle.com/#!2/5442d/6
Gewijzigd op 10/10/2012 19:21:00 door Wouter J
 
Matthijs Vos

Matthijs Vos

10/10/2012 19:43:34
Quote Anchor link
Ik doe nu:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?
$time
= date('Y-m-d H:i:s', strtotime($feed-> PubDate));
    $insert = $mysqli->query("INSERT INTO brandweer(time) VALUES ('".$time."')");
?>

En het veld time is 'datetime', maar toch komt er in de database 1970-01-01 01:00:00 terecht....

Toevoeging op 10/10/2012 19:44:50:

Toevoeging:
Terwijl er in de feed toch echt staat:
<pubDate>Wed, 10 Oct 2012 18:53:05 +0200</pubDate>
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

10/10/2012 20:08:34
Quote Anchor link
Probeer eens zonder de Wed, (substr($feed->Pubdate, 5))
 
Matthijs Vos

Matthijs Vos

10/10/2012 20:26:33
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? $time = date('Y-m-d H:i:s', strtotime(substr($feed->Pubdate, 5))); ?>

Dat bedoel je? Dan komt er nogsteeds 1970-01-01 01:00:00 uit...

Toevoeging op 10/10/2012 20:46:51:

Probleem opgelost:
ik had Pubdate ipv pubDate
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

10/10/2012 20:56:55
Quote Anchor link
Zit je op een windoos? Welke PHP versie?
Ik krijg gewoon 2012-10-10 18:53:05
 
Matthijs Vos

Matthijs Vos

10/10/2012 21:02:35
Quote Anchor link
@Ger Probleem is al opgelost, had Pubdate ipv pubDate waardoor hij het verkeerde uit de feed haalde...
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

10/10/2012 21:25:32
Quote Anchor link
Ik zag het Matthijs, ik zag jou toevoeging pas na dat ik mijn reactie geplaatst had.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.