Bug 1730 fixed : search doesn't work when database engine is not mysql

For posgresql and sqlite date must allways use day and month with two diggits.
merge from trunk

git-svn-id: http://piwigo.org/svn/branches/2.1@6519 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
nikrou
2010-06-10 21:08:34 +00:00
parent 406b9bfcd9
commit 9bbddd0cc4
2 changed files with 13 additions and 17 deletions

View File

@@ -223,7 +223,7 @@ function get_regular_search_results($search, $images_where)
if (!empty($search_clause))
{
$query = '
SELECT DISTINCT(id)
SELECT id
FROM '.IMAGES_TABLE.' i
INNER JOIN '.IMAGE_CATEGORY_TABLE.' AS ic ON id = ic.image_id
WHERE '.$search_clause;

View File

@@ -39,7 +39,7 @@ if (isset($_POST['submit']))
{
if (!is_array($post_value))
{
$_POST[$post_key] = mysql_real_escape_string($post_value);
$_POST[$post_key] = pwg_db_real_escape_string($post_value);
}
}
@@ -106,13 +106,11 @@ if (isset($_POST['submit']))
if (!empty($_POST['start_year']))
{
$search['fields'][$type_date.'-after'] = array(
'date' => join(
'-',
array(
$_POST['start_year'],
$_POST['start_month'] != 0 ? $_POST['start_month'] : '01',
$_POST['start_day'] != 0 ? $_POST['start_day'] : '01',
)
'date' => sprintf(
'%d-%02d-%02d',
$_POST['start_year'],
$_POST['start_month'] != 0 ? $_POST['start_month'] : '01',
$_POST['start_day'] != 0 ? $_POST['start_day'] : '01'
),
'inc' => true,
);
@@ -121,14 +119,12 @@ if (isset($_POST['submit']))
if (!empty($_POST['end_year']))
{
$search['fields'][$type_date.'-before'] = array(
'date' => join(
'-',
array(
$_POST['end_year'],
$_POST['end_month'] != 0 ? $_POST['end_month'] : '12',
$_POST['end_day'] != 0 ? $_POST['end_day'] : '31',
)
),
'date' => sprintf(
'%d-%02d-%02d',
$_POST['end_year'],
$_POST['end_month'] != 0 ? $_POST['end_month'] : '12',
$_POST['end_day'] != 0 ? $_POST['end_day'] : '31'
),
'inc' => true,
);
}