Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> auckje sposob na date i mysql-a
boya
post
Post #1





Grupa: Zarejestrowani
Postów: 287
Pomógł: 0
Dołączył: 26.02.2003
Skąd: Ow/Pn

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


Witam

Zastanawialem sie jak najlatwiej i najlepiej stawiac aukcje, jaki tym danych dac w mysql-u. I jak to wszystko policzyc.

Ja wybralem typ danych datetime, ale nie wiem czy to dobra droga i czy jest jakies wsparcie ze strony sql zeby policzyc np:

Kod
data_start = 2006-05-20 14:03:33
czas trwania = 14 dni
data zakonczenia = ?
przeliczyc w jakis sposob ? te 14 dni na typ datetime

2006-05-20 14:03:33(data_start) + przeliczone_14_dni = czas konca w formacie datetime


nie wiem czy to dobre rozwiazanie ?
bede wdzieczny z a ujawnienie waszych pomyslow albo poprawe mojego...


--------------------
Reklamowa Oklejanie Samochodów: oklejanie pojazdów / tel. 62 597 74 48
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
ave
post
Post #2





Grupa: Zarejestrowani
Postów: 117
Pomógł: 2
Dołączył: 29.01.2004
Skąd: Rz-ów

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


  1. INSERT
  2. INTO tabela
  3. SET data_start = '2006-05-20 14:03:33', czas trwania=14, data_end=data_start+INTERVAL 14 DAY


Ten post edytował ave 20.05.2006, 13:14:08
Go to the top of the page
+Quote Post
MrGhost
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.05.2006

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


Proponuję czas wstawiać w pole typu INT.
Czas w znaczniku UNIX-owym, czyli

time();

Myślę, że to najlepsze rozwiązanie. Czas przechowowany w takiej postaci można łatwo formatować i operować na nim.

Date Start: time()
Date End: time()+86400*14; // gdzie 86400 - ilość sekund w jednej dobie

Czas taki można łatwo skonwertować:

strftime ("%d-%m-%Y %H:%M:%S", time());

Więcej można znaleźć w manualu php.
Go to the top of the page
+Quote Post
boya
post
Post #4





Grupa: Zarejestrowani
Postów: 287
Pomógł: 0
Dołączył: 26.02.2003
Skąd: Ow/Pn

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


wybrałem droge ave...i będąć konsekwentny napotkałem kolejny problem...

chce sobie policzyc ile dni zostalo do konca aukcji
wiec w cywilizowany sposob powinienem zrobic to tak:

  1. <?php
  2. $zapytanie = "SELECT ((data_koniec - NOW()) / INTERVAL 24 HOUR) as czas_do_konca, data_koniec, data_czas FROM aukcja
  3. ?>


jednak takie cos wysypuje sie z bledem worriedsmiley.gif jezeli ktos ma pomysl jak to rozwiazac...bardzo dziekuje


--------------------
Reklamowa Oklejanie Samochodów: oklejanie pojazdów / tel. 62 597 74 48
Go to the top of the page
+Quote Post
boya
post
Post #5





Grupa: Zarejestrowani
Postów: 287
Pomógł: 0
Dołączył: 26.02.2003
Skąd: Ow/Pn

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


wyciagnolem to z manula, jednak nawet to co tam napisane nie chce ruszyc ;/

  1. $zapytanie = "SELECT CONCAT(DAYOFYEAR(date1)-DAYOFYEAR(NOW()),' days ', DATE_FORMAT(ADDTIME("2000-00-00 00:00:00",SEC_TO_TIME(TIME_TO_SEC(date1)-TIME_TO_SEC(NOW()))),'%k hours and %i minutes')) AS time aukcja WHERE id='".$_POST['nraukcja']."'";
  2. $wykonaj = mysql_query ($zapytanie);
  3. $krotka = @mysql_fetch_array ($wykonaj);


Parse error: parse error, unexpected T_LNUMBER in ... on line 45

moze to ktos sprawdzic na mysql 4 ?

Ten post edytował boya 25.05.2006, 18:28:40


--------------------
Reklamowa Oklejanie Samochodów: oklejanie pojazdów / tel. 62 597 74 48
Go to the top of the page
+Quote Post
AxZx
post
Post #6





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

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


ale ty chyba masz problem z php a nie mysql
popraw ' i "
bo z tym sa klopoty juz widac to tutaj na forum.


--------------------
aplikacje internetowe | Symfony
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Jak dzisiaj zauwazylem forum dziwnie traktuje ' " \" \' czasami cos obetnie, pozmienia kod.

boya: wrzuc kod na http://phpfi.com/


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
nitro18
post
Post #8





Grupa: Zarejestrowani
Postów: 311
Pomógł: 7
Dołączył: 2.08.2006
Skąd: Bystrzyca Kłodzka/Nysa

Ostrzeżenie: (10%)
X----


a ja używam strtotime

np. strtotime("2006-08-19 12:00:01);
lub strtotime("2006-08-19 12:00);
Go to the top of the page
+Quote Post
bim2
post
Post #9





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


uzyj time() 10xwygodniejsze a potem liczysz sobie odejmowaniem a nie jakimiś kombinacjami. Wyświetlasz np. date("Y:m", time()) bardzo proste to jest a nie kombinator.


--------------------
Go to the top of the page
+Quote Post
nitro18
post
Post #10





Grupa: Zarejestrowani
Postów: 311
Pomógł: 7
Dołączył: 2.08.2006
Skąd: Bystrzyca Kłodzka/Nysa

Ostrzeżenie: (10%)
X----


ta jasne 10x chyba do d*
Go to the top of the page
+Quote Post
bim2
post
Post #11





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


Każdy myśli co innego, ale z doświadczenia powiem Ci, że to jest wygodniejsze i szybsze. Jeszcze jak zapiszesz np. do zmiennej format daty to potem łatwo w całym serwisie zmienisz jej format


--------------------
Go to the top of the page
+Quote Post
nitro18
post
Post #12





Grupa: Zarejestrowani
Postów: 311
Pomógł: 7
Dołączył: 2.08.2006
Skąd: Bystrzyca Kłodzka/Nysa

Ostrzeżenie: (10%)
X----


ja już tak to strtotime(date("Y-m-d H:i:s"));

może dłuższy ale można póxniej go sformatować do zwykłej daty date("d-m-y H:i:s" $znacznik); lub y-m-d

nauczyłem się tej funkcji i jest ona w wielu moich skryptach i dobrze działa.
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 Aktualny czas: 21.08.2025 - 07:30