Comment limiter l'accès d'une rubrique à un invité SVP?

Started by jpdc91, June 18, 2005, 07:03:46 AM

Previous topic - Next topic

jpdc91

Bonjour, je voudrais limiter l'accès d'une rubrique (astuces Windows) à un invité, c'est à dire que la rubrique soit bien visible pour lui, mais que des qu'il clic dessus qu'on lui signale qu'il doit s'inscrire pour visiter les astuces Windows, es-ce possible de faire cela SVP?

MondeGsm

Je ne veux pas parler trop vite mais je crois que cela est impossible avec smf, mais tu peux faire en sorte que cette section lui soit invisible.

jpdc91

Merci pour cette réponse Monde Gsm  ;), j'espère que tu te trompe :P, ça m'arrangerait ;D

Alexandre P.

MondeGSM a en partie raison : ce n'est pas possible avec un SMF d'origine.  Mais une modification peut être effectuée: http://www.simplemachines.org/community/index.php?topic=16281.0

Plusieurs solutions ont été données, mais je pense que celle-là correspond le mieux à tes besoins:
Dans /Sources/BoardIndex.php, recherche:
WHERE $user_info[query_see_board]
À remplacer par:
WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (##, ##, ##)")
où ## sont les numéros des sections à afficher.  Les numéros de section peuvent être trouvés en regardant l'URL de la section: par exemple, la section "Language Specific Support" a le numéro 12: http://www.simplemachines.org/community/index.php?board=12.0

Il ne reste plus qu'à interdire l'accès aux sections voulues aux groupes de membres choisis.  Dans le Centre d'administration > Gestion des sections, sélectionne ta section à modifier.  Dans la liste des Groupes autorisés, décoche les groupes de membres ne pouvant pas accéder à la section.
Aucun support par M.P., courriel ou messagerie instantanée / No support by P.M., email or I.M.

jpdc91

J'essaie un peut de me lancé à l'eau :P si je veux interdire la section 10 et 5, ça fera ça alors,ou je me trompe? ::)

WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (10, 05)")

Alexandre P.

Nan, ça ne sera pas 05, mais seulement 5
WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (10, 5)")
Aucun support par M.P., courriel ou messagerie instantanée / No support by P.M., email or I.M.

MondeGsm

Personnellement je ne sais pas pour toi jpdc91 mais j'obtiens ceci :

Parse error: parse error, unexpected '=' in /home/mondegsm/www/forums/Sources/BoardIndex.php on line 80

jpdc91

salut à tous,moi j'ai aucun message d'ereur sauf que cc'est pas vraiment ce que je chercher :-[,en faite ce que je cherche à faire est que les visiteurs sache au début avoir accés au forum,puis ensuite des qu'il clic sur une section,on leur signale qu'il faut s'inscrire,es-ce possible de faire ça? :-\ donc pas comme l'image si dessous ;)

http://img180.echo.cx/img180/2851/screenshot036small7zi.jpg

Alexandre P.

Et sans l'espace avant le 5 ?
WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (10,5)")
Aucun support par M.P., courriel ou messagerie instantanée / No support by P.M., email or I.M.

MondeGsm

Pourtant j'ai mis ça :

WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (18)")

jpdc91

Quote from: Alexandre P. on June 19, 2005, 02:06:14 PM
Et sans l'espace avant le 5 ?
WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (10,5)")

en fessant ça j'ai le message" Parse error: parse error, unexpected '=' in /data/members/paid/j/p/jpdc91.be/htdocs/www/Sources/BoardIndex.php on line 80"
qui s'affiche :(

Alexandre P.

Je ne suis pas sûr, mais essayez toujours :

WHERE ($user_info[query_see_board] OR FIND_IN_SET(0, b.memberGroups))
Ce que ça devrait faire: afficher à tout le monde (donc, invités compris) les sections accessibles aux "membres sans groupes" (cf. le gestionnaire de sections dans le Centre d'admin).
Aucun support par M.P., courriel ou messagerie instantanée / No support by P.M., email or I.M.

jpdc91

Ok Alexandre ;), donc si je comprend bien, il y a plus question taper un nr de page, comme précédemment? ???

jpdc91

on y est presque alexandre :D,j'arrive en effet à avoir le site au complet en temp que invité,des que je clic sur une rubrique il me signale ceci: Le sujet ou la section que vous recherchez à l'air d'être manquant ou inaccessible pour vous.  ::)
http://img65.echo.cx/img65/4863/screenshot040small2np.jpg

MondeGsm

Oui mais quand ont est membre sans groupe ou avec groupe mais non autorisé ont ne voit pas la section une fois connecté au forum.



*je suis énervant mais c'est pour ça que vous m'aimez lol

jpdc91

Savez-vous m'éclairer SVP? Quelle est la différence entre un invité et un membre sans groupe? À quel groupe appartient une personne non inscrite sur un forum SVP?

Ps: quand je me connecte sans être inscris en temps que invité j'ai ce message en question qui apparaît :(

MondeGsm

Un invité est une personne qui ne fait que regarder ton forum qui n'y est pas inscrit, alors qu'un membre sans groupe est un membre inscrit sur ton forum mais qui ne fait pas parti d'un groupe spécifique (comme modérateur, technicien ect...) ;)

jpdc91

Ok  ;), c'est justement ça que je cherche c'est que les invités on eux aussi cette contrainte ::)

Alexandre P.

Invité = Personne non enregistrée ou non connectée sur ton forum
Membre sans groupe = Membre n'appartenant à aucun groupe régulier.

Le problème sur ton forum, c'est que tu as interdit l'accès à ton forum aux invités (l'option Permettre aux invités de visiter le forum, dans le Centyre d'administration > Configuration des caractéristiques et option, est décochée).  Pour simplement voir les catégories et les sections, tes visiteurs doivent être enregistrés et connectés.

Or, ce que tu cherches à accomplir, c'est que les visiteurs de ton forum (invités ou membres) puissent voir les sections.  Les membres peuvent accéder au contenu, les invités ne le peuvent pas.  Permettre aux invités de visiter le forum, couplé à la modif dans le fichier source que tu as effectuée, devrait donner ce résultat.
Aucun support par M.P., courriel ou messagerie instantanée / No support by P.M., email or I.M.

jpdc91

j'ai bien fait ce que tu ma dit ;), cochez la case "Permettre aux invités de visiter le forum" et modifier le fichier comme ceci WHERE ($user_info[query_see_board] OR FIND_IN_SET(0, b.memberGroups))
je n'ai aucun changement :-[,bizarre non?

z-c

Quote from: jpdc91 on June 19, 2005, 06:13:37 PM
on y est presque alexandre :D,j'arrive en effet à avoir le site au complet en temp que invité,des que je clic sur une rubrique il me signale ceci: Le sujet ou la section que vous recherchez à l'air d'être manquant ou inaccessible pour vous.  ::)
http://img65.echo.cx/img65/4863/screenshot040small2np.jpg [nofollow]

Moi jarive a en voir uine sans y pouvoir y acceder en invité ce qui est le but , mais par contre une autre section interdite aux invités et un groupe de membres  disparaît  :( .

Alexandre P.

Essaie avec l'autre solution que j'ai présentée plus haut:

Dans /Sources/BoardIndex.php, recherche:
WHERE $user_info[query_see_board]
À remplacer par:
WHERE ($user_info[query_see_board] OR b.ID_BOARD IN (##, ##, ##))
où ## sont les numéros des sections à afficher.  Les numéros de section peuvent être trouvés en regardant l'URL de la section: par exemple, la section "Language Specific Support" a le numéro 12: http://www.simplemachines.org/community/index.php?board=12.0
Aucun support par M.P., courriel ou messagerie instantanée / No support by P.M., email or I.M.

Advertisement: