Ver Mensaje Individual
  #5 (permalink)  
Antiguo 14/02/2010, 18:18
Avatar de daniel.manchego
daniel.manchego
 
Fecha de Ingreso: mayo-2006
Mensajes: 111
Antigüedad: 18 años
Puntos: 0
Respuesta: Problemas con sesiones y con paginación

Aqui va el código completo!


session_cache_limiter('private');
session_start();

$opt=0;

$db = new db_MySql;
$db->identification($BDD_Host,$BDD_Name,$BDD_User,$BDD _Password);




$objMenu = new clsMenu;




//definimos los sql básicos
//$strSQL_base = 'select * from isis where ';

$strSQLExecute = "";

$strSQL_base = "SELECT i.*";
$strSQL_base .= ",d_i.chp_date,d_i.chp_auteur,d_i.chp_titre, d_i.doc_type_isis_".$lg_min." AS chp_doc_type,d_i.chp_fiche,d_i.chp_detalle";
$strSQL_base .= ",d_t.doc_type_".$lg_min." AS chp_doc_categ,d_t.iddoc_type ";
$strSQL_base .= " FROM isis i,doc_type_isis d_i, doc_type d_t";
$strSQL_base .= " WHERE ( i.isis927 = d_i.codigo AND d_i.iddoc_type=d_t.iddoc_type) and ";

$strSQL_final = " AND d_i.iddoc_type = 6";
//$rqt .= " AND i.isis403 IN(".$doc_ref.")";

//descriptores temáticos y geográficos
$strSQL_tematico = " MATCH (isis087,isis088) AGAINST ('CLAVE' IN BOOLEAN MODE) ";
$strSQL_geografico = " MATCH (isis080,isis082,isis104,isis105,isis106) AGAINST ('CLAVE' IN BOOLEAN MODE) " ;

if(isset($_GET['criterio']))
{
$_SESSION['criterio'] = $_GET['criterio'];
$_SESSION['palabra_clave'] =$_GET['palabra_clave'];
$criterio = $_SESSION['criterio'];
$palabra_clave = $_SESSION['palabra_clave'] ;

}
elseif (isset($_GET['pagina']))
{
if(strlen($_SESSION['criterio'])<> 0)
{
$criterio = $_SESSION['criterio'];
$palabra_clave = $_SESSION['palabra_clave'] ;
}
}
else
{
$criterio = "";
}

if (isset($_POST['all_field']))
{
$palabra_clave = $_POST['all_field'];
$option = $_POST['search_type'];
$solo_pdf = $_POST['search_type'];

$_SESSION['palabra_clave'] = $_POST['all_field'];
$_SESSION['option'] = $_POST['search_type'];
$_SESSION['solo_pdf'] = $_POST['search_type'];
}
elseif(isset($_GET['pagina']))
{
if (strlen($_SESSION['option']) > 0)
{
$palabra_clave = $_SESSION['palabra_clave'];
$option = $_POST['search_type'];
$solo_pdf = $_POST['solo_pdf'];
}
}


if ( strlen($palabra_clave)>2 and $solo_pdf >=0 )
{


switch ($option)
{
case 0: $all_field = str_replace(' ','+',$palabra_clave);
$all_field = '+'.$all_field;
break;
case 1: $all_field = $_POST['all_field'];
break;
case 2: $all_field = sprintf('"%s"',$palabra_clave);
break;
}

$strSQLCampos = sprintf(" MATCH (isis010,isis011,isis012,isis016,isis017,isis018,i sis025,isis027,isis030,isis031,isis059,isis064,isi s080,isis082,isis087,isis088,isis104,isis105,isis1 06,isis107,isis108,isis109,isis119,isis126,isis115 ,isis125) AGAINST ('%s' IN BOOLEAN MODE ) ",$all_field);

if ($solo_pdf = 1)
$strSQL_pdf = ' and isis900 <> "" ';
else
$strSQL_pdf = "";

$strSQLExecute = $strSQL_base.$strSQLCampos.$strSQL_pdf.$strSQL_fin al;

}
__________________
Daniel Manchego
http://dmanchego.blogspot.com