Project

General

Profile

Problèmes fonctionnels #24

OPAC : ajout dans le panier "lecteur" du résultat d'une recherche multicritère

Added by Frédéric Filée over 7 years ago. Updated about 7 years ago.

Status:
Proposé
Priority:
Normal
Assignee:
-
Category:
OPAC - Recherches
Target version:
-
Start date:
07/15/2013
Due date:
% Done:

0%

Estimated time:

Description

Dans l'OPAC, avec les paniers activés pour les utilisateurs (anonymes),
pour les résultats d'une recherche multicritère,
le lien "Ajouter le résultat dans votre panier" ne met qu'une seule notice du résultat dans le panier.
Alors que toutes les notices du résultat de la recherche multi-critère devraient être ajoutés au panier.

Proposition de solution :
-------------------------

dans "/pmb/opac_css/cart_info.php" :
vers la ligne 163 : "case extented" et suivantes,
modifier le code comme suit :
case "extended":
$es=new search();
$table=$es->make_search();
$notices = '';
$q="select group_concat(distinct notice_id separator ',') from $table group by notice_id";
$r = mysql_query($q,$dbh);
if(mysql_num_rows($r)) {
// $notices = mysql_result($r,0,0);
$notices = array();
while ($row = mysql_fetch_array($r)) {
$notices[] = $row0;
}
$notices = implode(",", $notices);
$fr = new filter_results($notices);
$notices = $fr->get_results();
}
add_notices_to_cart($notices);
break;

History

#1 Updated by PMB Services about 7 years ago

  • Category set to OPAC - Recherches

Frédéric, peux-tu préciser la version de PMB. Je n'arrive pas à reproduire le problème.
Dans le code que tu soumets, il y a une incohérence :
le group_concat agrège les identifiants de notice séparés par une virgule, puis tu refais la ma même chose avec une boucle en dessous, comme si il y avait une ligne par identifiant.
De plus, attention avec le group_concat qui est limité par défaut à 1024 caractères. Le résultat est vite tronqué.
Extrait de la doc mysql :
"The result [of group_concat] is truncated to the maximum length that is given by the group_concat_max_len system variable, which has a default value of 1024."

Also available in: Atom PDF