Faire un formulaire ressemblant a des liens a href banals

bonjour,

pour completer le post "page sommaire" sur le formulaire qui permet d'afficher N articles dans une page ou N est defini par le visiteur; j'ai utilisé ceci :

<!-- <form method="GET" action="#SELF">
                        <p>
                        <span> Nombre d'articles à afficher : </span>
                        <input type="submit" name="nbarticles" value="10" />
                        <input type="submit" name="nbarticles" value="15" />
                        <input type="submit" name="nbarticles" value="20" />
                        <input type="submit" name="nbarticles" value="40" />
                        <input type="submit" name="nbarticles" value="-1" />
                        </p> </form> -->

1. Donc la c'est des boutons et lorsque je cliques dessus, çà passe en argument a ma boucle la paire : nbarticles / sa valeur.
Ca marche plutot bien mais je dois afficher çà comme si les boutons etaient des liens <a href>..</a>
Je n'y parvient pas. j'ai donc bricolé ceci mais c'est pas dynamique du tout et cette méthode me deplait bcp , c'est du bricolage

                        <a href="http://localhost/spip/?nbarticles=5&quot;&gt;5&lt;/a&gt;
                        <a href="http://localhost/spip/?nbarticles=10&quot;&gt;10&lt;/a&gt;
                        <a href="http://localhost/spip/?nbarticles=15&quot;&gt;15&lt;/a&gt;
                        <a href="http://localhost/spip/?nbarticles=20&quot;&gt;20&lt;/a&gt;

2. Est il possible en SPIP de recuperer le nombre d'articles compris dans une rubrique ?

Merci

On Wed, 20 Feb 2008 12:53:22 +0200, Mickael Bertainchant <mickael.bertainchant@ac-lille.fr> wrote:

2. Est il possible en SPIP de recuperer le nombre d'articles compris
dans une rubrique ?

Les réponses à certaines de tes questions (dont celles-ci) dont dans le manuel.

En l'occurence, à La syntaxe des boucles - SPIP on t'explique que

" #TOTAL_BOUCLE retourne le nombre total de résultats affichés par la boucle."

(C'est même le premier résultat renvoyé par google quand on lui demande "spip compter resultats boucle" :slight_smile: )

Si tu trouves le site spip.net peu maniable, la doc est disponible en pdf :

Pour ta question 1, je ne sais pas trop. Plutôt que des liens en dur, des bouts de "onclick: reload()" ne remplirait-il pas leur fonction ?

Sinon, peut être remplacer tes url en dur par des #SELF ?

JF

--
Using Opera's revolutionary e-mail client: Opera Web Browser | Faster, Safer, Smarter | Opera

en complement, en réel, si ça marche !

Nombre d'articles à afficher :

etc…


Karim Belkacem

Pour ta question 1, je ne sais pas trop. Plutôt que des liens en dur, des bouts de "onclick: reload()" ne remplirait-il pas leur fonction ?

Sinon, peut être remplacer tes url en dur par des #SELF ?

Non çà marche pas vraimment, de plus le cache de spip est une vraie misere pour moi faire mes tests en localhost

j'ai deux methodes qui fonctionnent pour le moment , la premiere me plait pas trop car c'est pas l'utilsiation d'un formulaire et la 2 eme marche parfaitement mais c'est des boutons. L'ideal serait d'utiliser la 2eme en ayant l'aspect visuel de la 1ere.

Lorsque je remplace mes URL en dur par des SELF; dans la premiere methode, c'est pas la joie. De plus je ne voit pas comment utiliser leonclick: reload()

<form method="GET">
    <p>
    <span> Nombre d'articles à afficher : </span>
        <a href="#URL_SITE_SPIP/spip.php?&nbarticles=<BOUCLE_art5(ARTICLES){0,5}></BOUCLE_art5></B_art5>#TOTAL_BOUCLE<//B_art5>">5</a>
        <a href="#URL_SITE_SPIP/spip.php?&nbarticles=<BOUCLE_art10(ARTICLES){0,10}></BOUCLE_art10></B_art10>#TOTAL_BOUCLE<//B_art10>">10</a>
        <a href="#URL_SITE_SPIP/spip.php?&nbarticles=<BOUCLE_art15(ARTICLES){0,15}></BOUCLE_art15></B_art15>#TOTAL_BOUCLE<//B_art15>">15</a>
        <a href="#URL_SITE_SPIP/spip.php?&nbarticles=<BOUCLE_art5000(ARTICLES){0,5000}></BOUCLE_art5000></B_art5000>#TOTAL_BOUCLE<//B_art5000>">Tout</a>
    </p>
</form>
<hr />
                <form method="GET">
                        <p>
                        <span> Nombre d'articles à afficher : </span>
                        <input type="submit" name="nbarticles" value="5" />
                        <input type="submit" name="nbarticles" value="10" />
                        <input type="submit" name="nbarticles" value="15" />
                        <input type="submit" name="nbarticles" value="20" />
                        <input type="submit" name="nbarticles" value="40" />
                        </p> </form>

pour la methode 1 je sais que c'est pas parfait au niveau des boucles mais c'est juste le temps de trouver une solution a mon probleme.

Merci

J.-F. Moyen a écrit :

On Wed, 20 Feb 2008 12:53:22 +0200, Mickael Bertainchant <mickael.bertainchant@ac-lille.fr> wrote:

2. Est il possible en SPIP de recuperer le nombre d'articles compris
dans une rubrique ?
    
Les réponses à certaines de tes questions (dont celles-ci) dont dans le manuel.

En l'occurence, à La syntaxe des boucles - SPIP on t'explique que

" #TOTAL_BOUCLE retourne le nombre total de résultats affichés par la boucle."

(C'est même le premier résultat renvoyé par google quand on lui demande "spip compter resultats boucle" :slight_smile: )

Si tu trouves le site spip.net peu maniable, la doc est disponible en pdf :
Documentation PDF de Spip - SPIP-Contrib

Pour ta question 1, je ne sais pas trop. Plutôt que des liens en dur, des bouts de "onclick: reload()" ne remplirait-il pas leur fonction ?

Sinon, peut être remplacer tes url en dur par des #SELF ?

JF

Mickael Bertainchant wrote:

de plus le cache de spip est une vraie misere pour moi faire mes tests en localhost

dans mes_options.php :

// ===================================================================
// désactiver la mise en cache pendant phase de développement
// ===================================================================
function public_cacher($contexte, &$use_cache, &$chemin_cache,
                        &$page, &$lastmodified) {
   $use_cache = -1;
   $lastmodified = 0;
   $chemin_cache = '';
   $page = array();
   return;
}

denisb a écrit :

Mickael Bertainchant wrote:
  
de plus le cache de spip est une vraie 
misere pour moi faire mes tests en localhost
    

dans mes_options.php :

//  ===================================================================
//  désactiver la mise en cache pendant phase de développement
//  ===================================================================
function public_cacher($contexte, &$use_cache, &$chemin_cache,
                        &$page, &$lastmodified) {
   $use_cache    = -1;
   $lastmodified = 0;
   $chemin_cache = '';
   $page         = array();
   return;
}

  

ou utiliser une lame du couteau suisse qui te permet de désactiver le cache.

Bon je crois que j'ai trouvé apres une journée complete passé dessus .... s'pô glorieux =) , si c'est pas le cache de SPIP qui me joue des tours , normalement çà fonctionne avec ceci :

                 <form method="GET" name="formupage" action="#SELF">
                    <p>
                    <span> Nombre d'articles à afficher : </span>
                    <a href="?nbarticles=5" onclick=document.forms.formupage.submit()>5</a>
                    <a href="?nbarticles=10" onclick=document.forms.formupage.submit()>10</a>
                    <a href="?nbarticles=20" onclick=document.forms.formupage.submit()>20</a>
                    <a href="?nbarticles=30" onclick=document.forms.formupage.submit()>30</a>
                    </p>
                </form>

et donc çà me passe çà en arguments pour ma boucle suivante :

<BOUCLE_article(ARTICLES){par date}{inverse}{0,#ENV{nbarticles,5}}> ...... </BOUCLE_article>

Demain je vais essayer de rajouter des controles dont karim m'a un peu donné la puce a l'oreille pour les rubriques comportants moins d'articles que mes propositions en DUR (5 10 20 30)

merci et bonne soirée a tous.

cdt,

Mickael

karim belkacem a écrit :

en complement, en réel, si ça marche !

<form method="GET" action="#SELF">

    <p>
    <span> Nombre d'articles à afficher : </span>
    <input type="submit" name="nbarticles"
    value="<BOUCLE_art10(ARTICLES){0,10}></BOUCLE_art10></B_art10>#TOTAL_BOUCLE<//B_art10>"
    />

etc...

    </form>

--
Karim Belkacem
------------------------------------------------------------------------

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : FAQ webmestre - SPIP
  

Bonjour,

Suite a ce message, je ne trouve pas le fichier mes_options.php dans mon install de SPIP. Dois je le créer ? Si oui a quel niveau de mon arborescence ? Merci

denisb a écrit :

Mickael Bertainchant wrote:
  

de plus le cache de spip est une vraie misere pour moi faire mes tests en localhost
    
dans mes_options.php :

// ===================================================================
// désactiver la mise en cache pendant phase de développement
// ===================================================================
function public_cacher($contexte, &$use_cache, &$chemin_cache,
                        &$page, &$lastmodified) {
   $use_cache = -1;
   $lastmodified = 0;
   $chemin_cache = '';
   $page = array();
   return;
}

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : FAQ webmestre - SPIP

tu dois le créer soit dans /config si tu es en version 1.9.2 et plus ou dans
/ecrire/ si inférieur.

Xavier BUROT

Selon Mickael Bertainchant <mickael.bertainchant@ac-lille.fr>:

Bonjour,

Suite a ce message, je ne trouve pas le fichier mes_options.php dans mon
install de SPIP. Dois je le créer ? Si oui a quel niveau de mon
arborescence ? Merci

denisb a écrit :
> Mickael Bertainchant wrote:
>
>> de plus le cache de spip est une vraie
>> misere pour moi faire mes tests en localhost
>>
>
> dans mes_options.php :
>
> // ===================================================================
> // désactiver la mise en cache pendant phase de développement
> // ===================================================================
> function public_cacher($contexte, &$use_cache, &$chemin_cache,
> &$page, &$lastmodified) {
> $use_cache = -1;
> $lastmodified = 0;
> $chemin_cache = '';
> $page = array();
> return;
> }
>
>
> _______________________________________________
> liste spip
> spip@rezo.net - désabonnement : spip-off@rezo.net
> Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
> Documentation de SPIP : http://www.spip.net/
> irc://irc.freenode.net/spip
> FAQ : FAQ webmestre - SPIP
>
>

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : FAQ webmestre - SPIP