-1

2つのテキストボックスと、入力に従ってこれらのテキストボックスの時間値を追加するボタンがあるコードがあります。

これが私の簡単なコードです:

<?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 と 00:30 を入力すると (12:00 に 30 分を追加したいという意味です)、12:30 であるはずの 11:30 が出力されます。私は何を間違っていますか?前もって感謝します。

4

3 に答える 3

2

これはいけません:

$tym = strtotime("btym");

これである:

$tym = strtotime("$btym");

?

于 2012-08-15T02:40:49.467 に答える
1

これは機能するはずです。ただし、30分を使用する場合は、の値をではなく、にするbtime必要があります(呼び出しの参照は時間であるため)。0.50:30strtotime()

コメント投稿者が示唆したように、すべての属性は引用符で囲む必要があります。

<?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";
}
?>
于 2012-08-15T02:46:42.053 に答える
0

返信ありがとうございます。:))) これは私の最初の投稿であり、皆さんが答えてくれてとてもうれしいです! :))) mysql addtime() および timediff() 関数を使用して動作するようになりました。テーブルに頭をぶつけることなく、簡単に作業できました。とにかく返信ありがとう!質問が多くなると思いますので、これからもよろしくお願いします。^_^

于 2012-08-16T01:58:39.087 に答える