iT邦幫忙

0

timestamp 如何應用

  • 分享至 

  • xImage

不好意思又來請問大家 , 沒用過這個函數 , 找了網上的範例 , 都是基本應用 , 但要如何應用在我的專案 ?
我修改 id 001 這個欄位時 , 有時間紀錄 , 但讀取時卻沒看到時間紀錄 , 要怎麼當顯現資訊 , 即update 該欄 ?

PHP timestamp 時間戳取得範例一、使用 time 函數
<?php
  echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8">'; //網頁編碼
  echo 'current Unix timestamp: '.time().'<br>'; //當前的 Unix 時間戳
?>
輸出結果(僅供參考示意,並非當前時間)
current Unix timestamp: 1412666448

https://ithelp.ithome.com.tw/upload/images/20181003/201043269RIg1UZ87Z.png
https://ithelp.ithome.com.tw/upload/images/20181003/20104326roHXwSqRNB.png

看更多先前的討論...收起先前的討論...
這~~~~我想先了解一下。你所謂的沒時間記錄是怎麼樣的??
id1那個不是有記錄了嗎??
現在搞不太明白你的問題在哪。

因該說,msqyl的東西,跟php的time函數???你是想要問什麼啦?
跑得快 iT邦新手 3 級 ‧ 2018-10-03 11:51:42 檢舉
https://stackoverflow.com/questions/8119386/how-to-convert-sql-servers-timestamp-column-to-datetime-format/8119407
Time stamping is a special record. In PHP and SQL databases, you can use UNIX time stamps, which can help you manipulate data through time stamps. Basically, this time stamp can be used in a way that is functionally transformed.
alex9453 iT邦新手 2 級 ‧ 2018-10-03 14:08:04 檢舉
感謝各位熱心回答,我是想問,SQL 可以讀取一次 ROW 就不再讀嗎 ?

別人給我的建議如後要怎麼做,增加 一view timestamp欄位, 當顯現資訊, 即update 該欄, 當下次select 該欄有值則排除它, 即可.。
id 哪列是有時間紀錄,但那是我測試修改資料留下紀錄,但我主要是讀取這列資料,沒有要修改,他說當顯現資訊, 即update 該欄,該怎麼做。
wwx iT邦好手 1 級 ‧ 2018-10-04 08:47:13 檢舉
只讀一次, 看看是不是這樣

第一次先抓PHP的timestamp紀錄下來,然後撈資料庫全部
第二次撈資料庫的時間是第一次紀錄的timestamp以後的,同時更新PHP新抓的timestamp
第三次以後,一直重複第二次的動作即可
- 缺點: 資料庫主機校時與PHP主機校時不太一致時,可能會漏讀資料

另一種方式則是用資料庫最新一筆資料更新的時間替代PHP的timestamp
也就是
第一次撈資料庫全部,抓每筆資料中時間最大的一筆紀錄下來
第二次撈資料庫的時間是第一次紀錄的時間之後的,同樣把本次撈出的資料中時間最大的一筆紀錄取代上次的紀錄作更新
第三次以後,一直重複第二次的動作即可

參考看看
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
炎之虛空
iT邦高手 3 級 ‧ 2018-10-03 12:31:42

http://www.w3school.com.cn/php/func_date_time.ASP

資料庫還要看你那欄位是否設定啥類型

假如你想寫資料的時候自動加入時間的話
請參考這篇
https://blog.longwin.com.tw/2007/10/mysql_timestamp_properties_2007/

看不懂的話請惡補自己的專業知識

看更多先前的回應...收起先前的回應...

感覺他一定看不懂的。
因為從他給的資料庫結構來看。它是已經設定好自動時間處理了。為何還會多出time()的用法一問。所以一整個不知道他是想問什麼。

alex9453 iT邦新手 2 級 ‧ 2018-10-03 14:08:45 檢舉

感謝各位熱心回答,我是想問,SQL 可以讀取一次 ROW 就不再讀嗎 ?

別人給我的建議如後要怎麼做,增加 一view timestamp欄位, 當顯現資訊, 即update 該欄, 當下次select 該欄有值則排除它, 即可.。
id 哪列是有時間紀錄,但那是我測試修改資料留下紀錄,但我主要是讀取這列資料,沒有要修改,他說當顯現資訊, 即update 該欄,該怎麼做。

跑得快 iT邦新手 3 級 ‧ 2018-10-03 14:50:43 檢舉

答案你全部都已經唸完了,多唸幾遍,說不定可以參透甚麼

alex9453 iT邦新手 2 級 ‧ 2018-10-03 15:57:05 檢舉

只要有值 新增/修改(同一個row), MySQL 會自動幫你將 "timestamp 型態的欄位" 寫入現在時間.

我只有讀取 row , 所以不會幫我寫入時間 , 那跟幫友建議我用 timestamp 是不是有出入

我只能跟你說,你理解錯方向了。
你已經做對了一步,就是當資料更新或新增時,會自動幫你修正你的view時間。這部份已經不需要你再去操作了。
所以同等道理去想。當你用select時,它的確是會依最後的時間顯示並不會做更新。那要如何讓它自動更新?
簡單來說,就是你再去更新一次資料就行了。

但因為你view是已經成為自動更新的方式。我是很想再多個sql函式給你。去查查now()的應用。

但其實你可以用另外一個方式。

不要人家說一動你就做一動,你要去了解為何要這樣跟你說。
請記得你的基礎可以說是完全不夠。這也就是為何有人提點你的情況下。你完全不知如何使用其理論再利用。你還是需要再加強。

首先,請先放棄「SQL 可以讀取一次 ROW 就不再讀嗎 ?」這樣的想法。
就這一句話而言,是辦不到的。
人家給你的,只是用另外一種方式來達到你想要的功能。
但如果你還一直被自已限制在「SQL 可以讀取一次 ROW 就不再讀嗎 ?」這樣的情節上,你永遠也無法明白我們對你說的答案。

請記得人家給你的是釣干。不要再去問人家魚在哪。
釣干在手,希望無窮。但如果你還希望人家幫你釣魚的話。
那你倒不如自行去買魚還比較快了。

alex9453 iT邦新手 2 級 ‧ 2018-10-03 20:45:18 檢舉

我沒有想要直接要魚 , 我知道有釣竿才能解決往後所有問題 , 之前的一個問題 [ SQL 如何搜尋到想要的資料 ] , 你們給我的方向 , 我已經找出答案解決了 , 這次因為沒接觸過 timestamp , 查了網上的範例 , 又都是 新增/修改 方面的 , 所以才會一直搞不懂 , 我的基礎是不夠 , 我看書上學了四成 , 另外六成不知道為什麼要那樣做 , 現在正好有專案可寫 , 所以就想從專案學 , 比較有目標 , 有壓力才比較快進步 .

如果不會timestamp 那為什麼要用這個指令呢
就像我說的 select 到的資料, 在update 就好了
就像在操作維護有sql的系統時, 再看資料,我也不敢直接下update
都是先select 到,確定是我要的資料,在依select 的條件去update 內容呀

這就是我說的積沙成塔, 也是堆積木呀
程式碼是靠堆積出來的,用最基本的指令當堆到一定程度,才去考慮新的指令吧

蟹老闆 iT邦大師 1 級 ‧ 2018-10-04 11:58:15 檢舉

只是的是人家給的釣竿不是釣竿,因為上面沒有魚。

alex9453 iT邦新手 2 級 ‧ 2018-10-04 12:14:54 檢舉

竹本立里 感謝你這麼多次熱心回答 , 我如果成功接到案子 , 要請你吃個大餐 , 希望你賞光 , 因為有約 1000多 row 要處理 , 每張 A4 約 10 row 就有約 100 張 A4 , 所以不能有重複的 row , 如果要用[ select 到,確定是我要的資料,在依select 的條件去update 內容]去比對 , 會很傷眼力與耗時間 , 這要在一天處裡完成 , 有時間壓力 , 所以才想用別人建議的 timestamp 的方法比對

alex9453 iT邦新手 2 級 ‧ 2018-10-04 12:19:40 檢舉

到時如果接到案子 , 會看看有多少人有建設性的建議 , 會請大家吃頓大餐 , 至少是響食天堂

0
code
iT邦新手 5 級 ‧ 2018-10-03 14:43:50

一般不是有需求才會去用嗎??
為啥你是去找需求?

看更多先前的回應...收起先前的回應...
alex9453 iT邦新手 2 級 ‧ 2018-10-03 15:59:28 檢舉

我的需求是讀取後做紀錄 , 這是新增/修改才會做紀錄 , 是否有出入 , 還是我誤解你的意思

讀取後做記錄=條件式更新

做記錄就是要更新,懂嗎?

不要硬將你的想法加入進去。快點跳拖出來可以嗎??
你是完全大大誤解所有人的意思了。

code iT邦新手 5 級 ‧ 2018-10-03 17:56:44 檢舉

我是指你說的這一段唷

不好意思又來請問大家 , 沒用過這個函數 , 找了網上的範例 , 都是基本應用 , 但要如何應用在我的專案 ?

一般我們都是需要什麼功能,才去找東西來使用吧,但是為什麼你是拿了一個東西來問大家要怎麼用在你的專案裡面呢??

鬼知道你要怎麼用喔=..=

跑得快 iT邦新手 3 級 ‧ 2018-10-03 18:14:06 檢舉

他就卡在一定要用這個,星空跟立花大之前明明已經點很明該怎麼做了,釣竿都在手了,堅持要用竹子插魚(扶額)。

0

timestamp 如何應用?
我覺得在需要用到加減時間時可以當成應用情況。
例如活動報名期限、投票、時間履歷...等,有些人不習慣60進位,用時間戳會方便些。
而且時間戳在寫PHP時,就可以發現取得當下跟POST當下都有時間差,PHP寫在甚麼位置就會有不同的記錄差產生,很有趣。

我要發表回答

立即登入回答