ok, поэтому мне нужно найти базу данных для имен людей, родившихся между двумя датами, веб-сайт просит пользователя ввести дату в этом формате dd/mm/yyyy, поэтому мне нужно манипулировать, так что что он будет работать в моем sql-поиске. То, что я сделал этоSQL-запросы с использованием php
$date_1 = $_GET["date_1"];
$date_2 = $_GET["date_2"];
function reorderDate($date) { //30/11/1970
$firstbrk = strpos($date, '/');
$day = substr($date, 0, $firstbrk);
$month = substr($date, $firstbrk + 1, -5);
$year = substr($date, strlen($date) - 4);
$corrDate = $year.
"-".$day.
"-".$month;
return $corrDate;
}
echo $Cdate_1 = reorderDate($date_1);
echo $Cdate_2 = reorderDate($date_2);
$tablename = 'Cyclist';
$sql = "SELECT name, dob FROM Cyclist WHERE dob > ' . $Cdate_1 . ' AND dob < ' . $Cdate_2 . ';";
$res = & $db - > query($sql);
if (PEAR::isError($res)) {
die($res - > getMessage());
}
echo "<br>";
echo $findings_numb = $res - > numRows();
while ($row = $res - > fetchRow()) {
echo $row[0].
"\n";
}
Я не найдя ничего в базе данных, но если я использую эту строку поиска вместо этого я найти много результатов, почему?
$sql = "SELECT name, dob FROM Cyclist WHERE dob > '1970-30-11' AND dob < '1990-30-11';";
Вы можете выйти ($ sql), чтобы посмотреть, что sql должен отлаживать? – harrrrrrry