Conseguido con:
Código PHP:
('SELECT id,user,category,subject,sentdate FROM tickets WHERE (sentdate >= "%'.$_GET['search'].'%") OR (sentdate <= "%'.$_GET['search'].'%")');
Luego en el form de busqueda tengo:
Código PHP:
<input type="checkbox" class="checkbox" name="search_in_sentdate" value="yes" {SEARCH_IN_SENTDATE}>
Ahí marco la pestañita y luego en el input type text del submit escribo la fecha en formato ingles 2005-11-30.
Esto me consigue buscar las incidencias. Lo hace bien a medias. Lo que hace es me las lista todas como resultado, pero las que concuerda con el $_GET['search'] en este caso (2005-11-30) me las marca en rojo. Y las que no concuerdan las lista pero sin estar en rojo.
La verdad es que no soy ningun experto en php y solo hago mis experimentos modificando codigo y ultimamente estoy aprendiendo sobre recuperar datos de la DB. No he entendido el codigo:
Código PHP:
$check1 = explode("-",$_GET['fechadesde']);
$check2 = explode("-",$_GET['fechahasta']);
if (!checkdate($check1[1],$check1[2],$check1[0]) OR !checkdate($check2[1],$check2[2],$check2[0])) {
echo "Error en formato de las fechas";
}
Supongo que es la creación de las variables: $_GET['fechadesde'] y $_GET['fechahasta']
pero tampoco se donde colocarlo. Que deberia colocarlo justo antes del codigo que describo a continuación ??
Es que lo he intentado muchas veces, pero con la unica que me funciona es con la GET[search]. Y eso lo entiendo pq se que la variable search es lo que busca. De ahí que modificara ligeramente tu codigo Seppo.
El codigo total es:
Código PHP:
if (isset($_GET['search_in_sentdate']))
{
// show user results
$sentdate_output = join ('', file (SCRIPT_PATH.'modules/admin/search/templates/functions/search_results_sentdate.tpl'));
$this->query_result = $db->db_query('SELECT id,user,category,subject,sentdate FROM tickets WHERE (sentdate >= "%'.$_GET['search'].'%") OR (sentdate <= "%'.$_GET['search'].'%")');
$numrows = $db->db_num_rows($this->query_result);
$i = 0;
while ($row = $db->db_fetch_array($this->query_result))
{
$row['user'] = eregi_replace($_GET['search'],'<font color="red"><b>'.$_GET['search'].'</b></font>',$row['user']);
$row['subject'] = eregi_replace($_GET['search'],'<font color="red"><b>'.$_GET['search'].'</b></font>',$row['subject']);
$row['sentdate'] = eregi_replace($_GET['search'],'<font color="red"><b>'.$_GET['search'].'</b></font>',$row['sentdate']);
$row['category'] = eregi_replace($_GET['search'],'<font color="red"><b>'.$_GET['search'].'</b></font>',$row['category']);
$sentdate_results[$i] = $sentdate_output;
$sentdate_results[$i] = str_replace('{ID}',$row['id'],$sentdate_results[$i]);
$sentdate_results[$i] = str_replace('{USER}','<a href="'.$_SERVER['PHP_SELF'].'?tpl=tickets_show_ticket&lang='.LANGUAGE.'&id='.$row['id'].'">'.$row['user'].'</a>',$sentdate_results[$i]);
$sentdate_results[$i] = str_replace('{SUBJECT}','<a href="'.$_SERVER['PHP_SELF'].'?tpl=tickets_show_ticket&lang='.LANGUAGE.'&id='.$row['id'].'">'.$row['subject'].'</a>',$sentdate_results[$i]);
$sentdate_results[$i] = str_replace('{CATEGORY}','<a href="'.$_SERVER['PHP_SELF'].'?tpl=tickets_show_ticket&lang='.LANGUAGE.'&id='.$row['id'].'">'.$row['category'].'</a>',$sentdate_results[$i]);
$sentdate_results[$i] = str_replace('{SENTDATE}','<a href="'.$_SERVER['PHP_SELF'].'?tpl=tickets_show_ticket&lang='.LANGUAGE.'&id='.$row['id'].'">'.$row['sentdate'].'</a>',$sentdate_results[$i]);
$i++;
}
if ($numrows == 0)
{
$sentdate_results = array();
}
$output = str_replace('{RESULTS_SENTDATE}',$numrows.' {LANG_SEARCH_SENTDATE_RESULTS}<br>'.implode('',$sentdate_results),$output);
}
Muchas gracias a todos y en especial a Seppo que gracias a el consegui la mitad de mi reto :D
Un saludo!!