0

How to get all data between to dates (from-dates & to_dates ) that user enter from a html form like. When user enter date like, from (1\1\2019) to (30\1\2019) I want check if that two date between date in MySQL table

I tried :

 $from = $_POST['from'];
 $end = $_POST['end '];
 $sql = "SELECT * FROM  table_name WHERE  '" . $from . "'  between 
  from_date and to_date and '" . $end . "'  between from_date and 
  to_date
  ";  

from_date and to_date...col in mysql table

saddam
  • 809
  • 8
  • 23

4 Answers4

2

Here, but you should format $from and $end to correct format

"SELECT * FROM table_name WHERE (date_column_name BETWEEN '" . $from . "' AND '" . $end . "') AND (date_column_name2 BETWEEN '" . $from . "' AND '" . $end . "')"

Where table_name is table you want to SELECT and date_column_name is your date column.

MorganFreeFarm
  • 3,811
  • 8
  • 23
  • 46
1

Try this,

    $from = $_POST['from'];
 $end = $_POST['end '];
 $sql = "SELECT * FROM  table_name WHERE date_column1 >= '" . $from . "' AND date_column2 <= '" . $end . "' "; 
Chanuka Sandeepa
  • 680
  • 6
  • 10
1

First you need to convert the input dates in to database date format yyyy-mm-dd

 $from = date('Y-m-d',strtotime($_POST['from']));
 $end = date('Y-m-d',strtotime($_POST['end ']));

 $sql = "SELECT * FROM  table_name WHERE  (date_column_name1 BETWEEN '" . $from . "' AND '" . $end . "')  AND (date_column_name2 BETWEEN '" . $from . "' AND '" . $end . "')"; 

OR

$sql = "SELECT * FROM  table_name WHERE  (from_date_column >='" . $from . "' AND to_date_column <='" . $end . "')"; 
JIJOMON K.A
  • 1,290
  • 3
  • 12
  • 29
0

Please try this

SELECT * FROM table_name 
WHERE  from_date >='$from' AND to_date <='$end';

or

SELECT * FROM table_name
WHERE from_date BETWEEN '$from' AND '$end' or to_date BETWEEN '$from' AND '$end';
sanjaya
  • 204
  • 2
  • 4
  • 11