function make_first_search() { global $search_tu; global $msg, $charset; global $browser, $browser_url, $search_form_titre_uniforme; $aq = new analyse_query(stripslashes($search_tu), 0, 0, 1, 1); if (!$aq->error) { $this->nbresults = 0; //Recherche dans les titres uniformes $rq_tu_count = $aq->get_query_count("titres_uniformes", "tu_name", "index_tu", "tu_id"); $this->nb_tu = @pmb_mysql_result(@pmb_mysql_query($rq_tu_count), 0, 0); if ($this->nb_tu) { $rq_tu = $aq->get_query("titres_uniformes", "tu_name", "index_tu", "tu_id"); $this->tu_query = @pmb_mysql_query($rq_tu); return AUT_LIST; } else { $search_form_titre_uniforme = str_replace("!!base_url!!", $this->base_url, $search_form_titre_uniforme); print $search_form_titre_uniforme; error_message($msg["searcher_no_result"], $msg["searcher_no_result_desc"]); $browser = str_replace("!!browser_url!!", $browser_url, $browser); print $browser; return; } } else { $this->show_error($aq->current_car, $aq->input_html, $aq->error_message); } }
function show_results($dbh, $user_input, $nbr_lignes = 0, $page = 0, $id = 0) { global $dbh, $msg, $charset; global $nb_per_page; global $base_url; global $caller; global $no_display; global $exact; global $thesaurus_classement_mode_pmb; global $id_pclass, $typdoc; $pclass_and_req = " num_pclass='{$id_pclass}' and id_pclass = num_pclass "; // on récupère le nombre de lignes qui vont bien if (!$id) { if ($user_input == '') { $requete = "SELECT COUNT(1) FROM indexint,pclassement where {$pclass_and_req} "; } else { if (!$exact) { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { print '<br /><div class="row">' . htmlentities($msg['no_result'], ENT_QUOTES, $charset) . '</div>'; exit; } $requete = $aq->get_query_count("indexint, pclassement", "concat(indexint_name,' ',indexint_comment)", "index_indexint", "indexint_id", "{$pclass_and_req}"); } else { $requete = "select count(distinct indexint_id) from indexint,pclassement where indexint_name like '" . str_replace("*", "%", $user_input) . "' and {$pclass_and_req}"; } } $res = mysql_query($requete, $dbh); $nbr_lignes = @mysql_result($res, 0, 0); } else { $nbr_lignes = 1; } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { // on lance la vraie requête if (!$id) { if ($user_input == "") { $requete = "SELECT * FROM indexint,pclassement where {$pclass_and_req} "; $requete .= "ORDER BY indexint_name LIMIT {$debut},{$nb_per_page} "; } else { if (!$exact) { $members = $aq->get_query_members("indexint", "concat(indexint_name,' ',indexint_comment)", "index_indexint", "indexint_id"); $requete = "select *," . $members["select"] . " as pert from indexint,pclassement where " . $members["where"] . " and {$pclass_and_req} group by indexint_id order by pert desc, index_indexint limit {$debut},{$nb_per_page}"; } else { $requete = "select * from indexint,pclassement where indexint_name like '" . str_replace("*", "%", $user_input) . "' and {$pclass_and_req} group by indexint_id order by indexint_name limit {$debut},{$nb_per_page}"; } } } else { $requete = "select * from indexint,pclassement where indexint_id='" . $id . "' {$pclass_and_req}"; } $res = @mysql_query($requete, $dbh); while ($indexint = mysql_fetch_object($res)) { if ($indexint->indexint_comment) { $entry = $indexint->indexint_name . " : " . $indexint->indexint_comment; $entry_ret = $indexint->indexint_name . " " . $indexint->indexint_comment; } else { $entry = $indexint->indexint_name; $entry_ret = $entry; } print "<a href='#' onclick=\"set_parent('{$caller}', '{$indexint->indexint_id}', '" . htmlentities(addslashes(str_replace("\r", " ", str_replace("\n", " ", $entry_ret))), ENT_QUOTES, $charset) . "')\">\n\t\t\t\t{$entry}</a>"; print "<br />"; } mysql_free_result($res); // constitution des liens $nbepages = ceil($nbr_lignes / $nb_per_page); $suivante = $page + 1; $precedente = $page - 1; // affichage pagination print '<hr /><div align="center">'; if ($precedente > 0) { print "<a href='{$base_url}&page={$precedente}&nbr_lignes={$nbr_lignes}" . $pclass_url . "&user_input=" . rawurlencode(stripslashes($user_input)) . "&exact={$exact}'><img src='./images/left.gif' border='0' title='{$msg['48']}' alt='[{$msg['48']}]' hspace='3' align='middle' /></a>"; } for ($i = 1; $i <= $nbepages; $i++) { if ($i == $page) { print "<b>{$i}/{$nbepages}</b>"; } } if ($suivante <= $nbepages) { print "<a href='{$base_url}&page={$suivante}&nbr_lignes={$nbr_lignes}" . $pclass_url . "&user_input=" . rawurlencode(stripslashes($user_input)) . "&exact={$exact}'><img src='./images/right.gif' border='0' title='{$msg['49']}' alt='[{$msg['49']}]' hspace='3' align='middle' /></a>"; } print '</div>'; } }
function show_results($dbh, $user_input, $nbr_lignes = 0, $page = 0, $id = 0) { global $nb_per_page; global $base_url; global $caller; global $callback; global $charset; global $msg; global $no_display; // on récupére le nombre de lignes qui vont bien if (!$id) { if ($user_input == "") { $requete = "SELECT COUNT(1) FROM collections where collection_id!='{$no_display}' "; } else { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("collections", "collection_name", "index_coll", "collection_id", "collection_id!='{$no_display}'"); } $res = mysql_query($requete, $dbh); $nbr_lignes = @mysql_result($res, 0, 0); } else { $nbr_lignes = 1; } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { // on lance la vraie requête if (!$id) { if ($user_input == "") { $requete = "SELECT collections.*,publishers.* FROM collections, publishers WHERE collection_id!='{$no_display}' and ed_id=collection_parent group by collection_id"; $requete .= " ORDER BY index_coll, index_publisher LIMIT {$debut},{$nb_per_page} "; } else { $members = $aq->get_query_members("collections", "collection_name", "index_coll", "collection_id"); $requete = "select collections.*,publishers.*, " . $members["select"] . " as pert from collections, publishers where " . $members["where"] . " and collection_id!='{$no_display}' and ed_id=collection_parent group by collection_id order by pert desc, index_coll, index_publisher LIMIT {$debut},{$nb_per_page}"; } } else { $requete = "select collections.*,publishers.* from collections,publishers where collection_id='" . $id . "' and collection_parent=ed_id group by collection_id"; } $res = @mysql_query($requete, $dbh); while ($col = mysql_fetch_object($res)) { print pmb_bidi("\n \t\t\t<a href='#' onclick=\"set_parent('{$caller}', {$col->collection_id}, '" . htmlentities(addslashes($col->collection_name), ENT_QUOTES, $charset) . "', {$col->ed_id}, '" . htmlentities(addslashes($col->ed_name), ENT_QUOTES, $charset) . "','{$callback}')\">\n\t\t\t\t{$col->collection_name}</a>"); print pmb_bidi(". {$col->ed_name}<br />"); } mysql_free_result($res); // constitution des liens $nbepages = ceil($nbr_lignes / $nb_per_page); $suivante = $page + 1; $precedente = $page - 1; // affichage pagination print "<div class='row'> <hr /></div><div align='center'>"; $url_base = $base_url . "&user_input=" . rawurlencode(stripslashes($user_input)); $nav_bar = aff_pagination($url_base, $nbr_lignes, $nb_per_page, $page, 10, false, true); print $nav_bar; print "</div>"; } }
} // on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM collections {$tri_param} "; if ($last_param) { $requete = "SELECT count(1) FROM collections " . $tri_param . " " . $limit_param; } } else { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { collection::search_form(); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("collections", "collection_name", "index_coll", "collection_id"); } $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); } else { $aq = new analyse_query(stripslashes($user_input)); } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { $collection_list_tmpl = str_replace("<! --!!nb_autorite_found!!-- >", $nbr_lignes . ' ', $collection_list_tmpl); $collection_list .= "<tr>\n\t\t<th>" . $msg[103] . "</th>\n\t\t<th>" . $msg[165] . "</th>\n\t\t<!--!!col_num_autorite!!-->\n\t\t<th>" . $msg["count_notices_assoc"] . "</th>\n\t\t</tr>"; $num_auth_present = false; $req = "SELECT id_authority_source FROM authorities_sources WHERE authority_type='collection' AND TRIM(authority_number) !='' LIMIT 1";
$titres_uniformes_list_tmpl = "\n<br />\n<br />\n<div class='row'>\n\t<h3><! --!!nb_autorite_found!!-- >" . $msg["aut_titre_uniforme_result"] . " !!cle!! </h3>\n\t</div>\n\t<script type='text/javascript' src='./javascript/sorttable.js'></script>\n\t<table class='sortable'>\n\t\t!!list!!\n\t</table>\n<div class='row'>\n\t!!nav_bar!!\n\t</div>\n"; // on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM titres_uniformes "; if ($last_param) { $requete = "SELECT count(1) FROM titres_uniformes " . $tri_param . " " . $limit_param; } } else { $aq = new analyse_query(stripslashes($user_input), 0, 0, 1, 1); if ($aq->error) { titre_uniforme::search_form(); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("titres_uniformes", "tu_name", "index_tu", "tu_id"); } $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); } else { $aq = new analyse_query(stripslashes($user_input), 0, 0, 1, 1); } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { $titres_uniformes_list_tmpl = str_replace("<! --!!nb_autorite_found!!-- >", $nbr_lignes . ' ', $titres_uniformes_list_tmpl); $url_base = "./autorites.php?categ=titres_uniformes&sub=reach&user_input=" . rawurlencode(stripslashes($user_input)); $titre_uniforme_list = "<tr>\n\t\t\t<th>" . $msg[103] . "</th>\n\t\t\t<!--!!col_num_autorite!!-->\n\t\t\t<th>" . $msg["count_notices_assoc"] . "</th>\n\t\t</tr>"; $num_auth_present = false;
function show_results($dbh, $user_input, $nbr_lignes = 0, $page = 0, $id = 0) { global $nb_per_page; global $base_url; global $caller; global $no_display; global $exact; global $charset; global $msg; global $thesaurus_classement_mode_pmb, $thesaurus_classement_defaut, $id_pclass, $typdoc; global $callback; if ($thesaurus_classement_mode_pmb != 0) { //classement indexation décimale autorisé en parametrage $pclass_and_req = " and num_pclass='{$id_pclass}' and id_pclass = num_pclass "; $pclass_url = "&id_pclass={$id_pclass}"; } else { $pclass_and_req = " and num_pclass='{$thesaurus_classement_defaut}' and id_pclass = num_pclass"; $pclass_url = "&id_pclass={$thesaurus_classement_defaut}"; } // on récupére le nombre de lignes qui vont bien if (!$id) { if ($user_input == "") { $requete = "SELECT COUNT(1) FROM indexint,pclassement where indexint_id!='{$no_display}' {$pclass_and_req} "; } else { if (!$exact) { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("indexint, pclassement", "concat(indexint_name,' ',indexint_comment)", "index_indexint", "indexint_id", "indexint_id!='{$no_display}' {$pclass_and_req}"); } else { $requete = "select count(distinct indexint_id) from indexint,pclassement where indexint_name like '" . str_replace("*", "%", $user_input) . "' and indexint_id!='{$no_display}' {$pclass_and_req}"; } } $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = @pmb_mysql_result($res, 0, 0); } else { $nbr_lignes = 1; } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { // on lance la vraie requête if (!$id) { if ($user_input == "") { $requete = "SELECT * FROM indexint,pclassement where indexint_id!='{$no_display}' {$pclass_and_req} "; $requete .= "ORDER BY indexint_name LIMIT {$debut},{$nb_per_page} "; } else { if (!$exact) { $members = $aq->get_query_members("indexint", "concat(indexint_name,' ',indexint_comment)", "index_indexint", "indexint_id"); $requete = "select *," . $members["select"] . " as pert from indexint,pclassement where " . $members["where"] . " and indexint_id!='{$no_display}' {$pclass_and_req} group by indexint_id order by pert desc, index_indexint limit {$debut},{$nb_per_page}"; } else { $requete = "select * from indexint,pclassement where indexint_name like '" . str_replace("*", "%", $user_input) . "' and indexint_id!='{$no_display}' {$pclass_and_req} group by indexint_id order by indexint_name limit {$debut},{$nb_per_page}"; } } } else { $requete = "select * from indexint,pclassement where indexint_id='" . $id . "' {$pclass_and_req}"; } $res = @pmb_mysql_query($requete, $dbh); while ($indexint = pmb_mysql_fetch_object($res)) { if ($indexint->indexint_comment) { $entry = $indexint->indexint_name . " - " . $indexint->indexint_comment; } else { $entry = $indexint->indexint_name; } if ($thesaurus_classement_mode_pmb != 0) { //classement indexation décimale autorisé en parametrage $entry = "[" . $indexint->name_pclass . "] " . $entry; } print pmb_bidi("\n\t\t\t<a href='#' onclick=\"set_parent('{$caller}', '{$indexint->indexint_id}', '" . htmlentities(addslashes(str_replace("\r", " ", str_replace("\n", " ", $entry))), ENT_QUOTES, $charset) . "','{$callback}')\">\n\t\t\t\t{$entry}</a>"); print "<br />"; } pmb_mysql_free_result($res); // constitution des liens $nbepages = ceil($nbr_lignes / $nb_per_page); $suivante = $page + 1; $precedente = $page - 1; // affichage du lien précédent si nécéssaire print '<hr /><div align=center>'; if ($precedente > 0) { print "<a href='{$base_url}&page={$precedente}&nbr_lignes={$nbr_lignes}" . $pclass_url . "&user_input=" . rawurlencode(stripslashes($user_input)) . "&exact={$exact}'><img src='./images/left.gif' border='0' title='{$msg['48']}' alt='[{$msg['48']}]' hspace='3' align='middle' /></a>"; } for ($i = 1; $i <= $nbepages; $i++) { if ($i == $page) { print "<b>{$i}/{$nbepages}</b>"; } } if ($suivante <= $nbepages) { print "<a href='{$base_url}&page={$suivante}&nbr_lignes={$nbr_lignes}" . $pclass_url . "&user_input=" . rawurlencode(stripslashes($user_input)) . "&exact={$exact}'><img src='./images/right.gif' border='0' title='{$msg['49']}' alt='[{$msg['49']}]' hspace='3' align='middle' /></a>"; } } print '</div>'; }
} // on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM publishers "; if ($last_param) { $requete = "SELECT count(1) FROM publishers " . $tri_param . " " . $limit_param; } } else { $aq = new analyse_query(stripslashes($user_input), 0, 0, 1, 1); if ($aq->error) { editeur::search_form(); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("publishers", "ed_name", "index_publisher", "ed_id"); } $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); } else { $aq = new analyse_query(stripslashes($user_input), 0, 0, 1, 1); } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { $ed_list_tmpl = str_replace("<! --!!nb_autorite_found!!-- >", $nbr_lignes . ' ', $ed_list_tmpl); $ed_list = "<tr>\n\t\t<th>" . $msg[103] . "</th>\n\t\t<th>" . $msg[72] . "</th>\n\t\t<th>" . $msg[147] . "</th>\n\t\t<th>" . $msg["count_notices_assoc"] . "</th>\n\t\t</tr>"; // on lance la vraie requête if (!$user_input) {
} // on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM series "; if ($last_param) { $requete = "SELECT count(1) FROM series " . $tri_param . " " . $limit_param; } } else { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { serie::search_form(); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("series", "serie_name", "serie_index", "serie_id"); } $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); } else { $aq = new analyse_query(stripslashes($user_input)); } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { $serie_list_tmpl = str_replace("<! --!!nb_autorite_found!!-- >", $nbr_lignes . ' ', $serie_list_tmpl); $serie_list = "<tr>\n\t\t<th>" . $msg[103] . "</th>\n\t\t<!--!!col_num_autorite!!-->\n\t\t<th>" . $msg["count_notices_assoc"] . "</th>\n\t\t</tr>"; $num_auth_present = false; $req = "SELECT id_authority_source FROM authorities_sources WHERE authority_type='serie' AND TRIM(authority_number) !='' LIMIT 1";
/** * * * @return void * @access public */ public function get_objects() { global $dbh; global $search; $objects = array(); $current_search = $this->get_mode(); if ($_SESSION["session_history"][$current_search]["NOTI"]["GET"]["mode"] != "") { $mode_search = $_SESSION["session_history"][$current_search]["NOTI"]["GET"]["mode"]; switch ($mode_search) { case 1: case 2: case 9: $requete = substr($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"], 0, strpos($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"], "limit")); $result = pmb_mysql_query($requete, $dbh); $notices_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $notices_ids[] = $row->notice_id; } $objects[] = array('layer' => "record", 'ids' => $notices_ids); if (count($notices_ids)) { $requete = "select distinct map_emprise_obj_num from map_emprises join notices_categories on map_emprises.map_emprise_obj_num = notices_categories.num_noeud where map_emprises.map_emprise_type=2 and notices_categories.notcateg_notice in (" . implode(",", $notices_ids) . ")"; $result = pmb_mysql_query($requete, $dbh); if (pmb_mysql_num_rows($result)) { $categ_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $categ_ids[] = $row->map_emprise_obj_num; } $objects[] = array('layer' => "authority", 'type' => 2, 'ids' => $categ_ids); } } break; case 0: case 11: if ($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"]) { $requete = substr($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"], 0, strpos($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"], "limit")); $result = pmb_mysql_query($requete, $dbh); $notices_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $notices_ids[] = $row->notice_id; } $objects[] = array('layer' => "record", 'ids' => $notices_ids); if (count($notices_ids)) { $requete = "select distinct map_emprise_obj_num from map_emprises join notices_categories on map_emprises.map_emprise_obj_num = notices_categories.num_noeud where map_emprises.map_emprise_type=2 and notices_categories.notcateg_notice in (" . implode(",", $notices_ids) . ")"; $result = pmb_mysql_query($requete, $dbh); if (pmb_mysql_num_rows($result)) { $categ_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $categ_ids[] = $row->map_emprise_obj_num; } $objects[] = array('layer' => "authority", 'type' => 2, 'ids' => $categ_ids); } } } break; case 3: $requete = "SELECT object_id FROM caddie_content where caddie_id='" . $_SESSION["session_history"][$current_search]["NOTI"]["GET"]["idcaddie"] . "' "; $res = pmb_mysql_query($requete, $dbh); $result = pmb_mysql_query($requete, $dbh); $notices_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $notices_ids[] = $row->object_id; } $objects[] = array('layer' => "record", 'ids' => $notices_ids); if (count($notices_ids)) { $requete = "select distinct map_emprise_obj_num from map_emprises join notices_categories on map_emprises.map_emprise_obj_num = notices_categories.num_noeud where map_emprises.map_emprise_type=2 and notices_categories.notcateg_notice in (" . implode(",", $notices_ids) . ")"; $result = pmb_mysql_query($requete, $dbh); if (pmb_mysql_num_rows($result)) { $categ_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $categ_ids[] = $row->map_emprise_obj_num; } $objects[] = array('layer' => "authority", 'type' => 2, 'ids' => $categ_ids); } } break; case 6: //Récupération et mise en variables globales des valeurs de l'historique if ($_SESSION["session_history"][$current_search]["QUERY"]["POST"]["search"][0]) { $search = $_SESSION["session_history"][$current_search]["QUERY"]["POST"]["search"]; //Pour chaque champ for ($i = 0; $i < count($search); $i++) { //Récupération de l'opérateur $op = "op_" . $i . "_" . $search[$i]; global ${$op}; ${$op} = $_SESSION["session_history"][$current_search]["QUERY"]["POST"][$op]; //Récupération du contenu de la recherche $field_ = "field_" . $i . "_" . $search[$i]; global ${$field_}; ${$field_} = $_SESSION["session_history"][$current_search]["QUERY"]["POST"][$field_]; $field = ${$field_}; //Récupération de l'opérateur inter-champ $inter = "inter_" . $i . "_" . $search[$i]; global ${$inter}; ${$inter} = $_SESSION["session_history"][$current_search]["QUERY"]["POST"][$inter]; //Récupération des variables auxiliaires $fieldvar_ = "fieldvar_" . $i . "_" . $search[$i]; global ${$fieldvar_}; ${$fieldvar_} = $_SESSION["session_history"][$current_search]["QUERY"]["POST"][$fieldvar_]; $fieldvar = ${$fieldvar_}; } } //on instancie la classe search avec le nom de la nouvelle table temporaire if ($_SESSION["session_history"][$current_search]["QUERY"]["POST"]["search"][0]) { $sc = new search(false); } else { $sc = new search(false, "search_simple_fields"); } $table_tempo = $sc->make_search("tempo_" . $current_search); $requete = "select * from " . $table_tempo; $result = pmb_mysql_query($requete, $dbh); $notices_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $notices_ids[] = $row->notice_id; } $objects[] = array('layer' => "record", 'ids' => $notices_ids); if (count($notices_ids)) { $requete = "select distinct map_emprise_obj_num from map_emprises join notices_categories on map_emprises.map_emprise_obj_num = notices_categories.num_noeud where map_emprises.map_emprise_type=2 and notices_categories.notcateg_notice in (" . implode(",", $notices_ids) . ")"; $result = pmb_mysql_query($requete, $dbh); if (pmb_mysql_num_rows($result)) { $categ_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $categ_ids[] = $row->map_emprise_obj_num; } $objects[] = array('layer' => "authority", 'type' => 2, 'ids' => $categ_ids); } } break; default: // authpersos if ($mode_search > 1000) { if ($_SESSION["session_history"][$current_search]["NOTI"]["POST"]) { $requete = substr($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"], 0, strpos($_SESSION["session_history"][$current_search]["NOTI"]["TEXT_QUERY"], "limit")); $result = pmb_mysql_query($requete, $dbh); $notices_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $notices_ids[] = $row->notice_id; } $objects[] = array('layer' => "record", 'ids' => $notices_ids); if (count($notices_ids)) { $requete = "select distinct map_emprise_obj_num from map_emprises join notices_categories on map_emprises.map_emprise_obj_num = notices_categories.num_noeud where map_emprises.map_emprise_type=2 and notices_categories.notcateg_notice in (" . implode(",", $notices_ids) . ")"; $result = pmb_mysql_query($requete, $dbh); if (pmb_mysql_num_rows($result)) { $categ_ids = array(); while ($row = pmb_mysql_fetch_object($result)) { $categ_ids[] = $row->map_emprise_obj_num; } $objects[] = array('layer' => "authority", 'type' => 2, 'ids' => $categ_ids); } } } } break; } } elseif ($_SESSION["session_history"][$current_search]["AUT"]["GET"]["mode"] != "") { $mode_search = $_SESSION["session_history"][$current_search]["AUT"]["GET"]["mode"]; switch ($mode_search) { case 0: if ($_SESSION["session_history"][$current_search]["AUT"]["POST"]) { foreach ($_SESSION["session_history"][$current_search]["AUT"]["POST"] as $key => $valeur) { global ${$key}; ${$key} = $valeur; } // Recherche sur l'auteur uniquement : $aq = new analyse_query(stripslashes($author_query), 0, 0, 1, 1); $restrict = ''; if ($typdoc_query) { $restrict = "and typdoc='" . $typdoc_query . "' "; } if ($statut_query) { $restrict .= "and statut='" . $statut_query . "' "; } if ($typdoc_query || $statut_query || $acces_j) { $restrict = "and responsability_author=author_id and responsability_notice=notice_id " . $restrict . " "; $members = $aq->get_query_members("authors", "concat(author_name,', ',author_rejete)", "index_author", "author_id"); $requete_count = "select count(distinct author_id) from authors, responsability, notices "; $requete_count .= $acces_j; $requete_count .= "where " . $members["where"] . " "; $requete_count .= $restrict; $requete = "select author_id," . $members["select"] . " as pert from authors, responsability, notices "; $requete .= $acces_j; $requete .= "where " . $members["where"] . " "; $requete .= $restrict . " group by author_id order by pert desc,author_name, author_rejete,author_numero , author_subdivision "; } else { $requete_count = $aq->get_query_count("authors", "concat(author_name,', ',author_rejete)", "index_author", "author_id"); $t_query = $aq->get_query_members("authors", "concat(author_name,', ',author_rejete)", "index_author", "author_id"); $requete = "select author_id," . $t_query["select"] . " as pert from authors where " . $t_query["where"] . " group by author_id order by pert desc,author_name, author_rejete, author_numero , author_subdivision "; } $t_query = @pmb_mysql_query($requete, $dbh); while ($row = pmb_mysql_fetch_object($t_query)) { $aut_ids[] = $row->author_id; } $objects[] = array('layer' => "authority", 'ids' => $aut_ids); } break; } } return $objects; }
function show_results($dbh, $user_input, $nbr_lignes = 0, $page = 0, $id = 0) { global $nb_per_page; global $base_url; global $caller; global $class_path; global $no_display; global $charset; global $msg; global $callback; if (!$id) { // on récupére le nombre de lignes if ($user_input == "") { $requete = "SELECT COUNT(1) FROM titres_uniformes where tu_id!='{$no_display}' "; } else { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("titres_uniformes", "tu_name,", "index_tu", "tu_id", "tu_id!='{$no_display}'"); } $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = @pmb_mysql_result($res, 0, 0); } else { $nbr_lignes = 1; } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { // on lance la vraie requête if (!$id) { if ($user_input == "") { $requete = "SELECT * FROM titres_uniformes where tu_id!='{$no_display}' ORDER BY tu_name LIMIT {$debut},{$nb_per_page} "; } else { $members = $aq->get_query_members("titres_uniformes", "tu_name", "index_tu", "tu_id"); $requete = "select *," . $members["select"] . " as pert from titres_uniformes where " . $members["where"] . " and tu_id!='{$no_display}' group by tu_id order by pert desc,index_tu limit {$debut},{$nb_per_page}"; } } else { $requete = "select * from titres_uniformes where tu_id='" . $id . "'"; } $res = @pmb_mysql_query($requete, $dbh); while ($titre_uniforme = pmb_mysql_fetch_object($res)) { $tu = new titre_uniforme($titre_uniforme->tu_id); $titre_uniforme_entry = $tu->display; print "<div class='row'>"; print pmb_bidi("<a href='#' onclick=\"set_parent('{$caller}', '{$titre_uniforme->tu_id}', '" . htmlentities(addslashes($titre_uniforme_entry), ENT_QUOTES, $charset) . "','{$callback}')\">{$titre_uniforme_entry}</a>"); print "</div>"; } pmb_mysql_free_result($res); // constitution des liens $nbepages = ceil($nbr_lignes / $nb_per_page); $suivante = $page + 1; $precedente = $page - 1; // affichage du lien précédent si nécéssaire print "<div class='row'> <hr /></div><div align='center'>"; $url_base = $base_url . "&rech_regexp={$rech_regexp}&user_input=" . rawurlencode(stripslashes($user_input)); $nav_bar = aff_pagination($url_base, $nbr_lignes, $nb_per_page, $page, 10, false, true); print $nav_bar; print "</div>"; } else { print $msg["aut_titre_uniforme_not_found"]; } }
function show_results($dbh, $user_input, $nbr_lignes = 0, $page = 0, $id = 0) { global $nb_per_page; global $base_url; global $caller; global $callback; global $class_path; global $no_display; global $charset; global $msg; global $libelleReq; global $id_type_autorite; if (!$id) { // on récupére le nombre de lignes if ($user_input == "") { $requete = "SELECT COUNT(1) FROM authors where author_id!='{$no_display}' " . $libelleReq; } else { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("authors", "concat(author_name,', ',author_rejete) ", "index_author", "author_id", "author_id!='{$no_display}'"); $requete .= $libelleReq; } $res = mysql_query($requete, $dbh); $nbr_lignes = @mysql_result($res, 0, 0); } else { $nbr_lignes = 1; } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { // on lance la vraie requête if (!$id) { if ($user_input == "") { $requete = "SELECT * FROM authors where author_id!='{$no_display}' {$libelleReq} ORDER BY author_name, author_rejete LIMIT {$debut},{$nb_per_page} "; } else { $members = $aq->get_query_members("authors", "concat(author_name,', ',author_rejete)", "index_author", "author_id"); $requete = "select *," . $members["select"] . " as pert from authors where " . $members["where"] . " and author_id!='{$no_display}' {$libelleReq} group by author_id order by pert desc,index_author limit {$debut},{$nb_per_page}"; } } else { $requete = "select * from authors where author_id='" . $id . "'" . $libelleReq; } $res = @mysql_query($requete, $dbh); while ($author = mysql_fetch_object($res)) { $auteur = new auteur($author->author_id); $author_voir = ""; // gestion des voir : if ($author->author_see) { $auteur_see = new auteur($author->author_see); $author_voir = "<a href='#' onclick=\"set_parent('{$caller}', '{$author->author_see}', '" . htmlentities(addslashes($auteur_see->isbd_entry), ENT_QUOTES, $charset) . "','{$callback}')\">" . htmlentities($auteur_see->isbd_entry, ENT_QUOTES, $charset) . "</a>"; $author_voir = ". - <i>{$msg['210']}</i> : " . $author_voir; } print "<div class='row'>"; print pmb_bidi("<a href='#' onclick=\"set_parent('{$caller}', '{$author->author_id}', '" . htmlentities(addslashes($auteur->isbd_entry), ENT_QUOTES, $charset) . "','{$callback}')\">{$auteur->isbd_entry}</a>"); print pmb_bidi($author_voir); print "</div>"; } mysql_free_result($res); // constitution des liens $nbepages = ceil($nbr_lignes / $nb_per_page); $suivante = $page + 1; $precedente = $page - 1; // affichage du lien précédent si nécéssaire print "<div class='row'> <hr /></div><div align='center'>"; $url_base = $base_url . "&rech_regexp={$rech_regexp}&user_input=" . rawurlencode(stripslashes($user_input)) . "&id_type_autorite=" . $id_type_autorite; $nav_bar = aff_pagination($url_base, $nbr_lignes, $nb_per_page, $page, 10, false, true); print $nav_bar; print "</div>"; } else { print $msg["no_author_found"]; } }
$authors_list_tmpl = "\n<br />\n<br />\n<div class='row'>\n\t<h3><! --!!nb_autorite_found!!-- >{$libelleResult} !!cle!! </h3>\n\t</div>\n\t<script type='text/javascript' src='./javascript/sorttable.js'></script>\n\t<table class='sortable'>\n\t\t!!list!!\n\t</table>\n<div class='row'>\n\t!!nav_bar!!\n\t</div>\n"; // on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM authors " . $id_type; if ($last_param) { $requete = "SELECT count(1) FROM authors " . $tri_param . " " . $limit_param; } } else { $aq = new analyse_query(stripslashes($user_input), 0, 0, 1, 1); if ($aq->error) { auteur::search_form($type_autorite); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("authors", "concat(author_name,', ',author_rejete)", "index_author", "author_id"); $requete .= $val_type; } $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); } else { $aq = new analyse_query(stripslashes($user_input), 0, 0, 1, 1); } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { $authors_list_tmpl = str_replace("<! --!!nb_autorite_found!!-- >", $nbr_lignes . ' ', $authors_list_tmpl); $url_base = "./autorites.php?categ=auteurs&sub=reach&user_input=" . rawurlencode(stripslashes($user_input)); $author_list = "<tr>\n\t\t\t<th>" . $msg[103] . "</th>\n\t\t\t<!--!!col_num_autorite!!-->\n\t\t\t<th>" . $msg["count_notices_assoc"] . "</th>\n\t\t</tr>";
} // on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM sub_collections"; if ($last_param) { $requete = "SELECT count(1) FROM sub_collections " . $tri_param . " " . $limit_param; } } else { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { subcollection::search_form(); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("sub_collections", "sub_coll_name", "index_sub_coll", "sub_coll_id"); } $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); } else { $aq = new analyse_query(stripslashes($user_input)); } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page; if ($nbr_lignes) { $sub_collection_list_tmpl = str_replace("<! --!!nb_autorite_found!!-- >", $nbr_lignes . ' ', $sub_collection_list_tmpl); $collection_list = "<tr>\n\t\t<th>" . $msg[103] . "</th>\n\t\t<th>" . $msg[165] . "</th>\n\t\t<!--!!col_num_autorite!!-->\n\t\t<th>" . $msg["count_notices_assoc"] . "</th>\n\t\t</tr>"; $num_auth_present = false; $req = "SELECT id_authority_source FROM authorities_sources WHERE authority_type='subcollection' AND TRIM(authority_number) !='' LIMIT 1";
function make_first_search() { global $msg, $dbh; global $elt_query; global $nb_per_page, $nb_per_page_select; global $results_show_all; if (!$nb_per_page) { $nb_per_page = $nb_per_page_select; } $aq = new analyse_query(stripslashes($elt_query)); if ($aq->error) { $this->show_form(); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); } else { $q_count = $aq->get_query_count('frais', 'libelle', 'index_libelle', 'id_frais'); $r_count = pmb_mysql_query($q_count); $n_count = pmb_mysql_result($r_count, 0, 0); $this->nbresults = $n_count; if (!$results_show_all) { $q_list = $aq->get_query('frais', 'libelle', 'index_libelle', 'id_frais', $this->page * $nb_per_page, $nb_per_page); } else { $q_list = $aq->get_query('frais', 'libelle', 'index_libelle', 'id_frais'); } $r_list = pmb_mysql_query($q_list, $dbh); $this->t_query = $r_list; if (!$results_show_all) { $this->nbepage = ceil($this->nbresults / $nb_per_page); } else { $this->nbepage = 1; } return ELT_LIST; } }
// on récupére le nombre de lignes qui vont bien if (!$nbr_lignes) { if (!$user_input) { $requete = "SELECT count(1) FROM indexint,pclassement {$pclass_req_where}"; if ($last_param) { $requete = "SELECT count(1) FROM indexint,pclassement {$pclass_req_where} " . $tri_param . " " . $limit_param; } } else { if (!$exact) { $aq = new analyse_query(stripslashes($user_input)); if ($aq->error) { indexint::search_form($id_pclass); error_message($msg["searcher_syntax_error"], sprintf($msg["searcher_syntax_error_desc"], $aq->current_car, $aq->input_html, $aq->error_message)); exit; } $requete = $aq->get_query_count("indexint,pclassement", "concat(indexint_name,' ',indexint_comment)", "index_indexint", "indexint_id", $pclass_req); } else { $requete = "select count(distinct indexint_id) from indexint,pclassement where {$pclass_req_and} indexint_name like '" . str_replace("*", "%", $user_input) . "' order by indexint_name"; } } $res = pmb_mysql_query($requete, $dbh) or die(pmb_mysql_error() . "<br /><br />{$requete}"); $nbr_lignes = pmb_mysql_result($res, 0, 0); } else { if (!$exact) { $aq = new analyse_query(stripslashes($user_input)); } } if (!$page) { $page = 1; } $debut = ($page - 1) * $nb_per_page;