最初のステップは、データベース テーブルを作成し、データを挿入することです。次のフィールドを含む「orders」という名前のテーブルを作成しましょう:
id: 自己インクリメント ID
date: 注文日
#amount: 注文金額
次の SQL ステートメントを使用してテーブルを作成します:
CREATE TABLE orders ( id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY, date DATE, amount DECIMAL(10,2) );
次に、 insert some データをテストするには、次の SQL ステートメントを使用します。
INSERT INTO orders (date, amount) VALUES ('2021-01-01', 100), ('2021-01-02', 50), ('2021-01-03', 200), ('2021-01-04', 150), ('2021-01-05', 75);
これで、注文データを含むテーブルが完成しました。
次のステップは、日付範囲内のデータをクエリするための PHP コードを作成することです。 「search.php」という名前の新しいファイルを作成し、次のコードを使用します。
<?php //连接数据库,以下为参数示例 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database_name"; $conn = new mysqli($servername, $username, $password, $dbname); //检查是否连接成功 if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } //检查搜索日期的输入 if (isset($_POST['from_date']) && isset($_POST['to_date'])) { //将输入的日期格式化为MySQL日期格式 $from_date = date('Y-m-d', strtotime($_POST['from_date'])); $to_date = date('Y-m-d', strtotime($_POST['to_date'])); //查询日期区间内的订单数据 $sql = "SELECT * FROM orders WHERE date >= '$from_date' AND date <= '$to_date'"; $result = $conn->query($sql); //输出查询结果 if ($result->num_rows > 0) { echo "<table><tr><th>ID</th><th>Date</th><th>Amount</th></tr>"; while($row = $result->fetch_assoc()) { echo "<tr><td>".$row["id"]."</td><td>".$row["date"]."</td><td>".$row["amount"]."</td></tr>"; } echo "</table>"; } else { echo "0 results"; } } //关闭连接 $conn->close(); ?>
このコードはデータベースに接続し、ユーザーが入力した検索日付範囲を確認します。日付範囲が入力された場合、スクリプトは入力された日付を MySQL 日付形式にフォーマットし、注文データをクエリして結果をテーブルに出力します。結果がない場合は「0件」が出力されます。
ここで、ユーザー入力を受け入れる HTML フォームを作成する必要があります。「search.php」ファイルの完全なコードは次のとおりです:
<!DOCTYPE html> <html> <head> <title>Search Orders By Date Range</title> </head> <body> <h2>Search Orders By Date Range</h2> <form method="POST" action="search.php"> From: <input type="text" name="from_date" placeholder="YYYY-MM-DD"> To: <input type="text" name="to_date" placeholder="YYYY-MM-DD"> <input type="submit" value="Search"> </form> <?php include 'search.php' ?> </body> </html>
この HTML ファイルは、ユーザーは開始日と終了日を入力します。 POST メソッドを使用して同じページにフォームを送信し、上で作成した PHP コードを含めます。
これで、このファイルをブラウザで開き、フォームを使用して日付範囲を入力し、注文データを検索できます。結果は表に表示されます。
以上がphp+mysqlで日付内のデータをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。