Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] zapis DATY z RSSdo bazy danych
kroghot
post 26.12.2007, 19:07:46
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 16.03.2007

Ostrzeżenie: (0%)
-----


witam serdecznie, zczytuje z wiadomości rss date w formacie
Mon, 24 Dec 2007 22:23:00 GMT
problem jest tego typu że nie moge ustwić typu w bazie bo na chwile obecną jest ustawione varchar(40), nie moge ustwić typu data bo tego nie zapisuje ani datatime bo też tego nie zapisuje. Jest mi to potrzebne żeby efekt był taki:

z tego:

data
Mon, 24 Dec 2007 22:23:00 GMT

to:
data czas
2007.12.24 22:23:00

jak to zrobić bo już newrwa mam

Na chwile obecną robie tak że godzine z tej daty wyciągam a date daje nową systemową w momencie zapisu do bazy. problem jest jak wiadomość jest z godziny 23:00-23:59 bo zapis jest co godzine o pełnej godzinie.

Jest mase funkcji do formatowania daty w mysql ale jak data jest zapisana jako data a nie jako varchar.

Z góry dziękuje
Go to the top of the page
+Quote Post
czachor
post 26.12.2007, 19:09:56
Post #2





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Skorzystaj z tego: strtotime().

Ten post edytował czachor 26.12.2007, 19:10:11


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post
kroghot
post 13.01.2008, 19:50:48
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 16.03.2007

Ostrzeżenie: (0%)
-----


wykorzystałem tą funkcje ale coś dziwnie mi to zmienia:

1. tą date Fri, 4 Jan 2008 16:02:24 GMT zmieniam pięknie na taką 2008-01-04

2. tą date Fri, 4 Jan 2008 23:07:35 GMT zmienia mi na date 2008-01-05

do tych dat wykorzystuje taki kawałęk kodu:
  1. <?php
  2. $data = date("Y-m-d",strtotime(substr($data, -25)));
  3. ?>


gdzie data jest :
data = "Fri, 4 Jan 2008 16:02:24 GMT"
data = "Fri, 4 Jan 2008 23:07:35 GMT"

proszę o pomoc

odświeżam temat boj został bez odpowiedzi
Go to the top of the page
+Quote Post
czachor
post 13.01.2008, 20:16:02
Post #4





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Bo na serwerze masz ustawioną strefę czasową CET. Zobacz sam:
  1. <?php
  2. echo date('T');
  3. ?>


W Twojej dacie jest GMT. Różnica między CET a GMT to właśnie ta godzina. Poczytaj przy funkcjach date(), setlocale(), date_default_timezone_set(). Na pewno dojdziesz, jak to rozwiązać.


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post
kroghot
post 13.01.2008, 21:13:36
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 16.03.2007

Ostrzeżenie: (0%)
-----


Faktycznie jest CET, ale nie za bardzo wiem jak sobie z tym poradzić. Możesz mnie troche nakierować - przeczytałem troche o tych funkcjach ale nadal nie wiem jak to zmienić
Go to the top of the page
+Quote Post
czachor
post 13.01.2008, 21:20:22
Post #6





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Któraś opcja z date() (bodajże 'O') wyświetla różnicę godzin między GMT a serwerem. Spróbuj odjąć ją gdzieś między strtotime a date.


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.06.2025 - 16:41