Permettre l'affichage d'une page en php

Fermé
numism€uros Messages postés 51 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 7 mai 2019 - 6 avril 2009 à 12:05
numism€uros Messages postés 51 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 7 mai 2019 - 6 avril 2009 à 12:30
Bonjour,

Voilà mon problème.

J'ai créé un site web sur ma généalogie et je voudrais permettre l'accès à certaines personnes pour certaines pages de ma généalogie.
Pour exemple :

pour être clair, je voudrais
que les membres 1 aient accès aux pages A à D, + les pages accessibles aux visiteurs * RESOLU*
que les membres 2 aient accès aux pages E à H, + les pages accessibles aux visiteurs * RESOLU*
que les membres 3 aient accès aux pages I à M, + les pages accessibles aux visiteurs * RESOLU*
que les membres 4 aient accès aux pages N à R, + les pages accessibles aux visiteurs * RESOLU*
que les membres 5 aient accès aux pages A à D et E à H, + les pages accessibles aux visiteurs * Problème non résolu*
que les membres 6 aient accès aux pages I à M et N à R, + les pages accessibles aux visiteurs * Problème non résolu *
que les membres 7 n'aient pas accès aux pages N à R,mais accès aux pages visiteurs *RESOLU*


Voici donc ce que j'ai déjà fais :

Pour la page accessible pour les membres1 voici le code que je mets :

<?
$variables = array("gateau1");
foreach($_REQUEST as $key => $val) if (in_array($key, $variables)) ${$key} = $val;
require("config.esm.php");
$droits = 0;
$vrainom = ""; //Facultatif
$vraiprenom = ""; //Facultatif
if (isset($gateau1)) CheckDroits($gateau1);
if ($droits !=1){
if (isset($HTTP_REFERER)) $newurl = $HTTP_REFERER; else $newurl = "index.htm";
header("Location: $newurl");
exit();
}
?>
<html>
<head>
<title>Page A r&ecute;serv&ecute;e aux membres 1.</title>
</head>
<body>
Cette page ne doit être vue que par les membres 1 et n'est transmise que si les droits sont OK. Le "header-location:" de la fonction
CheckPage rejette les utilisateurs dont les droits sont à zéro. Avantage : on a juste
un court script en haut de la page.
<p>
<a href="sommaire.php">Retour au sommaire</a>
</body>
</html>

ça fonctionne impeccable de même que pour les pages réservées aux membres 2, 3, 4 .

Où ça coince c'est pour les pages accessibles aux membres 5 ou 6 .

Voici le code que je mets pour les membres 5 :

<?
$variables = array("gateau1");
foreach($_REQUEST as $key => $val) if (in_array($key, $variables)) ${$key} = $val;
require("config.esm.php");
$droits = 0;
$vrainom = ""; //Facultatif
$vraiprenom = ""; //Facultatif
if (isset($gateau1)) CheckDroits($gateau1);
if ($droits !=1) && ($droits !=2) && ($droits !=5){
if (isset($HTTP_REFERER)) $newurl = $HTTP_REFERER; else $newurl = "index.htm";
header("Location: $newurl");
exit();
}
?>
<html>
<head>
<title>Page A & E r&ecute;serv&ecute;e aux membres 5.</title>
</head>
<body>
Cette page ne doit être vue que par les membres 5, 1, 2 et n'est transmise que si les droits sont OK. Le "header-location:" de la fonction
CheckPage rejette les utilisateurs dont les droits sont à zéro. Avantage : on a juste
un court script en haut de la page.
<p>
<a href="sommaire.php">Retour au sommaire</a>
</body>
</html>

la page ne s'affiche pas

J'ai donc écrit ce code pour les membres 6 ci-dessous :

<?
$variables = array("gateau1");
foreach($_REQUEST as $key => $val) if (in_array($key, $variables)) ${$key} = $val;
require("config.esm.php");
$droits = 0;
$vrainom = ""; //Facultatif
$vraiprenom = ""; //Facultatif
if (isset($gateau1)) CheckDroits($gateau1);
if ($droits !=3 4 6) {
if (isset($HTTP_REFERER)) $newurl = $HTTP_REFERER; else $newurl = "index.htm";
header("Location: $newurl");
exit();
}
?>
<html>
<head>
<title>Page I & N r&ecute;serv&ecute;e aux membres 6.</title>
</head>
<body>
Cette page ne doit être vue que par les membres 3, 4, 6 et n'est transmise que si les droits sont OK. Le "header-location:" de la fonction
CheckPage rejette les utilisateurs dont les droits sont à zéro. Avantage : on a juste
un court script en haut de la page.
<p>
<a href="sommaire.php">Retour au sommaire</a>
</body>
</html>

là ça me marque un message d'erreur.

Parse error: syntax error, unexpected T_LNUMBER in /web/sites/vhbu3/2/66/123946/public/www/esp_mem/page_membre6.php on line 9

QUELLE EST L'ERREUR ?

Vous pouvez vous rendre compte en allant sur le site d'essai à l'adresse suivante :
http://www.toosvan.net/esp_mem/index.htm

pour vos essais, j'ai créé des membres fictifs dont voici les identifiants :

membre 1 = douguetp@labas.fr - 265811
membre 2 = jmarron@ici.fr - 472Lie
membre 3 = marie-zoe@labas.fr - zm6u3v
membre 4 = lmct@ici.fr - celtle
membre 5 = songlive@ici.fr - slg823
membre 6 = prunelle@labas.fr - 742154
membre 7 = utile@ici.fr - 43a7iv

En claire pour terminer, comment doit-on écrire pour que les pages s'affichent pour les membres 5 ou 6 .

Merci pour votre aide
A voir également:

7 réponses

Utilisateur anonyme
6 avril 2009 à 12:09
Bonjour,
Au lieu de mettre &&, mets || (équivalent à OR).
0
numism€uros Messages postés 51 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 7 mai 2019 1
6 avril 2009 à 12:13
ça marche pas non plus.
voici le message d'erreur :
Parse error: syntax error, unexpected T_BOOLEAN_OR in /web/sites/vhbu3/2/66/123946/public/www/esp_mem/page_membre5.php on line 9
0
Utilisateur anonyme
6 avril 2009 à 12:17
Suis-je bête, c'est bien &&. C'est pas si facile que ça les booléens. ^^

En rajoutant des parenthèses, est-ce que ça marche ?
if (($droits !=1) && ($droits !=2) && ($droits !=5)) { ...}
0
numism€uros Messages postés 51 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 7 mai 2019 1
6 avril 2009 à 12:23
toujours un message d'erreur :
Parse error: syntax error, unexpected '(' in /web/sites/vhbu3/2/66/123946/public/www/esp_mem/page_membre5.php on line 9
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
numism€uros Messages postés 51 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 7 mai 2019 1
6 avril 2009 à 12:25
NON, ça marche. je me suis trompé en mettant la 2èmè ). j'avais mis un (
0
Utilisateur anonyme
6 avril 2009 à 12:25
^^. Donc maintenant, ton code fonctionne bien ?
0
numism€uros Messages postés 51 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 7 mai 2019 1
6 avril 2009 à 12:30
oui très bien. Merci à toi pour ce coup de main. j'ai modifié le code pour les membres 6 et ça marche aussi . SUPER .

Si tous les forums sur d'autres sites pouvaient être comme celui-ci ce serait le bonheur

Encore merci à toi .

Je mets donc résolu
0