Actualiser une page après identification

Résolu/Fermé
bugs_bunny Messages postés 8 Date d'inscription vendredi 4 avril 2008 Statut Membre Dernière intervention 16 avril 2009 - 4 avril 2008 à 12:43
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 - 4 avril 2008 à 19:38
Bonjour,
Après avoir développé un site web php, je me retrouve avec un problème que je n'arrive vraiment pas à résoudre...

Ce site comprend un système d'identification, où une fois inscrit, on rentre un login et un mot de passe. Une fois identifié, de nouvelles options devraient apparaitrent sur le site.

Cependant, après identification, l'utilisateur est bien reconnu, mais les nouveaux liens n'apparaissent pas...
Il faut à chaque fois actualiser la page pour que les changements soient bien pris en compte.

C'est pourquoi je me demande de quelle manière je pourrais faire apparaitre les sections juste avec le click du bouton "connexion", sans avoir à chaque fois à réactualiser la page.


J'ai déja tenté plusieurs choses...
Par exemple, j'ai essayé de mettre dans ma balise form :
<form method = "post" action="mapage.php">
Mais rien n'a changé, ilfaut toujours actualiser pour que les nouvelles infos fonctionnent.

J'ai également essayé de passer par une page intermédiaire vide, qui redirigerait automatiquement sur la page. Donc cette fois ci :
<form method = "post" action="mapageIntermédiaire.php>
Puis dans cette page intermédiaire :
<?php session_start();?>
<script>
window.location.replace("mapage");
</script>


Mais cette fois ci pire encore, l'identification n'est pas prise en compte, et on reste toujours au statut d'invité.

Bref après avoir tenté différentes choses, je commence à désespérer car je ne sais plus quoi faire! J'espère donc que vous pourrez m'aider à trouver une solution à mon problème.

Bonne journée et bon week end !
A voir également:

6 réponses

Bonjour Bugs_Bunny,
Peux tu donner un peu plus de détail sur

"Cependant, après identification, l'utilisateur est bien reconnu, mais les nouveaux liens n'apparaissent pas..."

Quelle est cette condition qui devrait te permettre d'afficher les liens.
0
bugs_bunny Messages postés 8 Date d'inscription vendredi 4 avril 2008 Statut Membre Dernière intervention 16 avril 2009
4 avril 2008 à 13:22
En fait imaginons qu'un Mr paul X s'identifie, une fois qu'il rentre son login et mot de passe, on vérifie qu'il existe bel et bien dans la base de donnée. Chaque utilisateur possède des "droits" sous forme d'entiers.
Dans mon cas, les utilisateurs ont accès à conditions que leurs droits soient supérieurs ou égaux à 10.

Si l'utilisateur est bien dans la base de donné et qu'il s'est connecté au site, le message "Bonjour Paul X 10" (le 10 correspond aux droits. je l'ai mis pour vérifier) s'affiche.

Ainsi sur le site, les textes supplémentaires sont sencé s'affiché si les droits sont supérieurs ou égaux à 10, comme là:
<?php
if ($_SESSION['s_droits'] >= 10)
{
?>
(Les textes supplémentaires s'affichent)

<?php
}
?>
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 329
4 avril 2008 à 13:06
Tu es obligé de réactualiser la page. Sinon ,pour que ce soit "transparent" aux yeux du visiteur, il faut passer au Dhtml, mais il y a égalmeent réactualisation.
Perso, je refuse le dhtml à tout va, pour la simple raison que js peut être désactivé sur un navigateur pour différentes raisons et qu'il n'y a pas de raison qu'un utilisateur soit lésé par ses choix de configuration.
0
bugs_bunny Messages postés 8 Date d'inscription vendredi 4 avril 2008 Statut Membre Dernière intervention 16 avril 2009
4 avril 2008 à 13:24
Comment marcherais plus précisément le Dhtml ?

En fait je veux surtout éviter que l'utilisateur croit que le système ne marche pas, car il n'aura pas forcément le reflexe d'actualiser manuellement sa page :/
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 329
4 avril 2008 à 13:42
Atta, question :

1) Tu dis que "Bonjour Paul X 10" s'affiche lorsque Paul se connecte. Dans ce cas, il n'y a pas de raison que le reste de la page ne s'actualise pas en même temps.
A moins que ton module d'inscription ne soit dans une frame ?
A moins que qqch m'échappe. Pour ça :

2) SI je comprend bien :
- ton utilisateur n'est pas logué : il ne voit pas le texte caché
- ton utilisateur se connecte : il voit "Bonjour Paul X 10" mais ne voit pas le texte caché
- il réactualise la page : il voit "Bonjour Paul X 10" et le texte caché

c'est bien ça ?
0
bugs_bunny Messages postés 8 Date d'inscription vendredi 4 avril 2008 Statut Membre Dernière intervention 16 avril 2009
4 avril 2008 à 13:51
1) En fait il y a ma page (disons mapage.php), et le module d'inscription sur une autre page (dison inscription.php).
La page mapage.php appelle inscription.php avec un include :
include("inscription.php");
Le problème viendrais de là ?

2) Oui c'est exactement ça.
J'imagine que pour ton 3ème point tu voulais dire :
"- il réactualise la page : il voit "Bonjour Paul X 10" et le texte caché s'affiche" :p
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 329
4 avril 2008 à 14:02
Ok.

A quel moment est ce que tu inclues le module de login ? avant le contenu de la page, ou après la page ?

en gros :

1)
<html>
    <body>
        <p>le texte</p>
        <?php include(form.php) ?>
    </body>
</html>

ou
2)
<html>
    <body>
        <?php include(form.php) ?>
        <p>le texte</p>
    </body>
</html>
0
bugs_bunny Messages postés 8 Date d'inscription vendredi 4 avril 2008 Statut Membre Dernière intervention 16 avril 2009
4 avril 2008 à 18:09
Le module de login est a la fin (1). donc)

PS: j'ai du m'absenter, du coup je répond un peu tard ^^'
0

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

Posez votre question
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 329
4 avril 2008 à 19:13
La page se charge avant le form. Je suppose (j'ai jamais fait le test) que de ce fait, c'est la page qui se charge AVANT le formulaire. Puisque le formulaire n'a pas encore détecté le login, la page se charge sans le texte caché, puisqu'il faut etre logué pour voir les infos cachées.
Essaye, pour le test, de charger le FORM AVANT la page. Dans cette situtation, le login sera reconnu, puis viendra la page, qui, étant connecté, chargera les infos cachées.

A tester, mais à priori je vois ça comme ça.

Tu m'as compris ou pas ?
0
bugs_bunny Messages postés 8 Date d'inscription vendredi 4 avril 2008 Statut Membre Dernière intervention 16 avril 2009
4 avril 2008 à 19:34
Gryzzly tu es un dieu !!!

Je viens de tester et ça marche nickel !!!!! :D

Vraiment merci mille fois d'avoir pris la peine de m'aider, je commençais vraiment a perdre espoir !!!
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 329
4 avril 2008 à 19:38
Gryzzly tu es un dieu !!!

J'en demandais pas tant ;o)
0