ホームページ > バックエンド開発 > PHPチュートリアル > PHPは入力された開始時刻と終了時刻に基づいてデータベース内のテーブルのレコードを取得します。

PHPは入力された開始時刻と終了時刻に基づいてデータベース内のテーブルのレコードを取得します。

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 12:58:58
オリジナル
1390 人が閲覧しました

php は、入力された開始時刻と終了時刻に基づいてデータベース内のテーブルのレコードを取得します
私がやりたいのは統計ページです。クエリ条件は入力 (js をクリックして時刻を選択します) の開始時刻に基づいています。終了時刻 [OK] ボタンをクリックして、この期間のレコードをクエリします
データベースフィールド:
id int(10)
ip varchar(50)
時間 varchar(50)
タイプ varchar(50)

開始日:  終了日:  

これが表です:
内容量は種類と対応する数量です

統計の初心者なので助けてください




-----解決策---------
開始日:<入力タイプ = "text" name="timeStart" onfocus="c.showMoreDay = false;c.show(this);" />  終了日:timeEnd" onfocus="c.showMoreDay = false;c.show(this);" />  

$t1=$_POST['timeStart'];<br />
$t2=$_POST['timeEnd'];<br />
$sql="select type,count(*) from tt where time BETWEEN '$t1' AND '$t2' group by type";<br />
$result=mysql_query($sql);<br />
while($row=mysql_fetch_row($result)){<br />
        echo $row[0].'  '.$row[1].'<br>';<br />
}
ログイン後にコピー

-----解決策---------
time varchar(50)
比較する前に、少なくとも受信データを時間フィールドの形式と一致するように修正する必要があります
彼は言い​​ませんでした、わかりません
-----解決策----------
鍵はデータベースです 声明、原則方法は ID でクエリする場合と同じです。 SQL文は2階で出題されています。
別の話になりますが、投稿者は時間選択プラグインをダウンロードできます。結局のところ、ユーザーが時間を手動で入力するのは理想的ではありません。 jq jquery-calendar の紹介 インターネット上には多くのスタイル シートがあり、自分でスタイルを選択できます。
------解決策---------
time varchar(50)
保存した時間は文字列であるため、
2012.12.14 10:43
2012/12/14 10:43:20
2012-12-14 10:43:31p
すべて法定日です
2012/12/14 10:43:22
にフォームが渡された場合 そうすれば、そのうちの少なくとも 2 つは比較できません



引用:
xuzuning よくわかりませんが、時間を挿入する前に形式を確認するということですか?
xiebuqing 私はカレンダープラグインをダウンロードして時間を選択したユーザーです
もう 1 つの問題は、ユーザーが期間レコードをクエリしない場合、ページにはデフォルトでデータベース内のすべての種類のレコードが表示される必要があることです

-----解決策--- ----- ------------
渡された日付の形式は何ですか?
-----解決策---------
年月日だけでも
'2012/12/14' と '2012-12-14' も等しくありません

-----解決策-------------- - -----
形式が統一できればコード1を使用可能
-----解決策---------- - ----------
判断してください
if(!empty($t1) && !empty($t2)){<br />
   $sql="select type,count(*) from tt where time BETWEEN '$t1' AND '$t2' group by type";<br />
}else{<br />
    $sql="select type,count(*) from total_counter group by type";<br />
}<br />
$result=mysql_query($sql);
ログイン後にコピー

-----解決策--------------------------------
このように記述する方がよく、さまざまな状況に適応できます。Case

$t1 = $_POST['timeStart'];<br>
$t2 = $_POST['timeEnd'];<br>
$t = 配列(1);<br>
if($t1) $r[] = "時間>='$t1'";<br>
if($t2) $r[] = "時間
$t = join(' と ', $t);<br>
<br>
$sql = "total_counter から type,count(*) を選択します ($t はタイプごとにグループ化されます)";
ログイン後にコピー
関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート