Bonjour,
je désire ordonner alphanumériquement les éléments qui seront plubliés parJ'ai bien essayé de glisser maladroitement un sort() mais ça n'a pas marché...Code:<?php foreach ($this->searchareas['search'] as $val => $txt) :
Un conseil ?
;)
Version imprimable
Bonjour,
je désire ordonner alphanumériquement les éléments qui seront plubliés parJ'ai bien essayé de glisser maladroitement un sort() mais ça n'a pas marché...Code:<?php foreach ($this->searchareas['search'] as $val => $txt) :
Un conseil ?
;)
Comment as-tu utilisé sort() ?
Mal visiblement :aie:Code:<?php foreach (sort($this->searchareas['search']) as $val => $txt) :
C'etait audacieux comme syntaxe, mais sort() renvoit TRUE et non pas un tableau trié.
Il faut donc faire le sort() avant.
J'ai essayé avant en cherchant autour deMais je n'ai rien trouvé...Code:
1
2
3
4 //Set the search areas $areas = JRequest::getVar('areas'); $this->setAreas($areas);
:?
il est ou ton sort() la ?
Quand je dis "avant", une ligne au dessus suffit hein.
J'ai misÇa trie effectivement ;)Code:
1
2
3
4
5
6
7
8
9
10
11 $tri = $this->searchareas['search']; sort($tri); foreach ($tri as $val => $txt) : $checked = is_array( $this->searchareas['active'] ) && in_array( $val, $this->searchareas['active'] ) ? 'checked="checked"' : ''; ?> <input type="checkbox" name="areas[]" value="<?php echo $val;?>" id="area_<?php echo $val;?>" <?php echo $checked;?> /> <label for="area_<?php echo $val;?>"> <?php echo JText::_($txt); ?> </label> <?php endforeach; ?>
Mais il n'y a plus aucun résultat à la recherche ! :aie:
C'est quoi "la recherche" ?
En fait ce bout de code correspond aux checkboxes (cf image) pour restreindre la recherche Joomla. Ce sont elles que je souhaite classer.
Et qu'est ce que tu n'as plus ?
Je n'ai plus aucun résultat de recherche…
(une recherche infructueuse alors qu'il devrait y avoir des résultats)
Ta recherche est basée sur la "value" des case à cocher ?
Si oui est-ce que tes cases à cocher ont la "value" attendue ?
Oui effectivement les valeurs sont modifiées :
Il y a une valeur numérique qui remplace celle attendue...
Recherche fructueuseRecherche infructueuseCode:http://www.aaa.com/index.php?searchword=medi&ordering=newest&searchphrase=all&limit=20&areas[0]=vmxsearch&areas[1]=elevents&areas[2]=elcategories&option=com_search&lang=fr
Code:http://www.aaa.com/index.php?searchword=medi&ordering=newest&searchphrase=all&limit=20&areas[0]=1&areas[1]=2&areas[2]=3&option=com_search&lang=fr
Il faudrait que tu contrôles au niveau de ta requête ce qui est executé.
J'ai trouvé ici que sort() ne maintient pas la corrélation entre les clés et les valeurs. Je l'ai remplacé par asort() et ça me retourne des résultats cohérents.
Par contre le tri est effectué sur la valeur. J'aurais préféré que cela se fasse sur le texte, $txt, car on a l'impression que le tri n'est pas ordonné :
Articles Types d'activités Activités Catalogue Liens web
:?
C'est bien le texte la valeur de ton tableau non ?
Ben non, ça aurait été trop simple :?
Array ( [content] => Articles [elcategories] => EVENTLIST CATEGORIES [elevents] => EVENTS [vmxsearch] => Products [weblinks] => Weblinks )
Affiche :
- en US : Articles Event categories Events Catalog Web Links
- en FR : Articles Types d'activités Activités Catalogue Liens web
- en SP : Artículos Tipos de actividades Actividades Catálogo Enlaces web
J'aimerais bien que ça soit ordonné en fonction de ces intitulés
Chaque extension de recherche (les checkboxes) charge son fichier de traduction comme ça :
et derrière ily a des fichiers texte en .iniCode:
1
2 //Load the Plugin language file out of the administration JPlugin::loadLanguage( 'plg_search_eventlist' );
Bonjour,
tu peux juste print_ré ou dumpé les données non triées du résultat de recherche
et le tableau que tu attends en résultat avant affichage SVP ?
Euh...
j'ai peut-être raté quelque chose, mais ce n'est pas le résultat que je cherche à ordonner mais les checkboxes des filtres de recherche.
print_r ($tri); donnait ça :
Array ( [content] => Articles [elcategories] => EVENTLIST CATEGORIES [elevents] => EVENTS [vmxsearch] => Products [weblinks] => Weblinks )
C'est ça que je cherche à ordonner en fonction des valeurs textes que ces éléments prennent.
heu ...
asort($tri, SORT_STRING) ;
trier un tableau sur des valeurs considérées comme des chaines en conservant les clés, je ne vois pas d'autres réponses
C'était bien ça ta question ?