Re: [心得] 關於時間日期加減的方法
※ 引述《KC73 (肯先生)》之銘言:
: ※ 引述《idcomputer (順)》之銘言:
: : 不好意思可以再多請教KC大一個問題嗎?!
: : 假設起始日期是
: : <? $d = strtotime("2009-02-02"); ?>
: : 以下有個表單
: : <input name="c[]" type="checkbox" id="c[]"
: : value="
: : <?
: : for($q=1;$q<=5;$q++)
: : { echo date("Y-m-d",strtotime("+{$q} weeks",$d));
: : echo "-1"; //第一節
: : }
: : ?>
: : ">
: : <input name="c[]" type="checkbox" id="c[]"
: : value="
: : <?
: : for($q=1;$q<=5;$q++)
: : { echo date("Y-m-d",strtotime("+{$q} weeks",$d));}
: : echo "-2"; //第二節
: : ?>
: : ">
: : 如果將此二核取方塊都勾選後,如何將各日期的資料分筆存入資料表內呢
: : EX 五周的日期的話
: : INSERT table set date = '2009-02-09-1'
: : INSERT table set date = '2009-02-16-1'
: : INSERT table set date = '2009-02-23-1'
: : INSERT table set date = '2009-03-02-1'
: : INSERT table set date = '2009-03-09-1'
: : INSERT table set date = '2009-02-09-2'
: : INSERT table set date = '2009-02-16-2'
: : INSERT table set date = '2009-02-23-2'
: : INSERT table set date = '2009-03-02-2'
: : INSERT table set date = '2009-03-09-2'
: : 之前之在送出表單後
: : for($i=0;$i<count($c);$i++){
: : $sql="INSERT table set c='".$c[$i]."'";
: : $result=mysql_query($sql);
: : }
: : 不過日期這樣就通通擠在$c[$i]裡面
: : 在煩請高手您指點^^||感恩~~
: 在下不是高手也不大, 所以就不用那麼客氣了。
: 針對問題回答的話, 大概會長這個樣子, 參考看看~
: (這個檔案叫做 t.php)
: <?php
: if (!empty($_POST)) {
: unset($sql);
: foreach($_POST['c'] as $d1) {
: $d2 = explode(",",$d1);
這邊是指先將字串分割
分割出來應該是
2009-02-09#1
2009-02-16#1
2009-02-23#1
2009-03-02#1
2009-03-09#1
2009-02-09#2
2009-02-16#2
2009-02-23#2
2009-03-02#2
2009-03-09#2
的陣列
: foreach($d2 as $d3) {
: if (!empty($d3)) {
: $d4 = explode("#",$d3);
此部分是只說將字串在進行分割為前後兩半嗎?!?!
$d4[0]指的是前段
$d4[1]指的是後段
所以就會將其分為
EX
2009-03-09-1
不過有一點想再請教您的是
如果兩個核取方塊都勾選的情況下送出的話
INSERT INTO class (c)
VALUES
('2009-02-09-1'),('2009-02-16-1'),('2009-02-23-1'),
('2009-03-02-1'),('2009-03-09-1'),
('1970-01-01-0')
^^^^^^^^^^^^^^^^
第二個核取方塊的日期卻有了些錯誤
而後面應該接的尾數本來是2也變成0了
想請教您問題是出在哪邊呢!?
非常感謝您讓我又學到了不少~~~感恩^^~~
: $sql[] = "('".date("Y-m-d",strtotime($d4[0])).
: "-".(int) $d4[1]."')";
: }
: }
: }
: echo "INSERT INTO `table` (date) VALUES ".implode(",",$sql);
: exit;
: }
: ?>
: <form action='t.php' method='post'>
: <? $d = strtotime("2009-02-02"); ?>
: <input name="c[]" type="checkbox" id="c[]"
: value="<?
: for($q=1;$q<=5;$q++)
: { echo date("Y-m-d",strtotime("+{$q} weeks",$d));
: echo "#1,";
: }
: ?>"/>
: <input name="c[]" type="checkbox" id="c[]"
: value="<?
: for($q=1;$q<=5;$q++)
: { echo date("Y-m-d",strtotime("+{$q} weeks",$d));
: echo "#2,";
: }
: ?>"/>
: <input type='submit'/>
: </form>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.166.118
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章