2012-08-15 1 views
-1

나는 2 개의 texboxes와 입력에 따라 해당 텍스트 상자의 시간 값을 추가하는 버튼이있는 코드를 가지고 있습니다.PHP 추가 시간

<?php 

echo "<form method=post><input type=text name=etd>"; 
echo "<input type=text name=btime>"; 
echo "<input type=submit name=sub value=submit></form>"; 
if(isset($_POST['sub'])) 
{ 

     $etime = $_POST['etd']; 
     $btym = $_POST['btime']; 
     $time = strtotime("$etime"); 
     $tym = strtotime("btym"); 
     $etym = strtotime("+$btym hours", $time); 
     $eta = date('H:i:s', $etym); 

echo "$eta"; 
} 
?> 

내가 입력 12:00 0시 반 (I 12시 30 분을 추가 할 의미) 경우는, 그러나 작동, 그것은 11:30 출력 : 여기에

내 간단한 코드입니다 그것은 12시 30 분으로되어 있습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 미리 감사드립니다.

+0

아마도이 문제는 해결되지 않지만 모든 html 속성 값은 따옴표로 묶어야합니다. 예 : ' ' –

+0

echo ""; 그래서 내부에 큰 따옴표를 추가하면 오류가 발생합니다. :)) – xjshiya

+0

그런 다음 작은 따옴표를 사용하거나 에코를 대신 사용하십시오. –

답변

0

답장을 보내 주셔서 감사합니다. :))) 이것은 나의 첫 번째 게시물이며 나는 너희들이 대답했기 때문에 기뻐한다! :))) mysql addtime() 및 timediff() 함수를 사용하여 작업 할 수 있습니다. 나없이 테이블에 머리를 두드리는 것은 쉽지. 어쨌든 답장을 보내 주셔서 감사합니다! 나는 많은 질문을 게시 할 것이므로 지금부터 당신의 손에 달려있을 것입니다.^_^

2

이 안 :

$tym = strtotime("$btym"); 

:

$tym = strtotime("btym"); 

이 만나?

+0

'$ tym'은 코드에서 사용되지 않습니다. 아무 것도 변경되지 않습니다. – nickb

+0

'$ btwm'은'$ etym = strtotime ("+ $ btym hours", $ time);'에 있기 때문에''$ strtotime ("+ $ btym hours", $ time);'문자열에 UNIX 타임 스탬프를 사용하는 것은 의미가 없습니다. + {SOMEETING} 시간'입니다. – nickb

1

이렇게하면됩니다. 30 분을 사용하려는 경우 btime의 값은 전화에서의 참조가 시간 이후이므로 이 아니고 0:30이 아야합니다.

의견 제시자가 제안했듯이 모든 속성은 인용으로 묶어야합니다.

<?php 

echo '<form method=post><input type="text" name="etd">'; 
echo '<input type="text" name="btime">'; 
echo '<input type="submit" name="sub" value="submit"></form>'; 
if(isset($_POST['sub'])) 
{ 
    $eta = date('H:i:s', strtotime($_POST['etd'] . ' +' . $_POST['btime'] . ' hours')); 
    echo "$eta"; 
} 
?>