Condition PHP

Petit nouveau ! | 8 Messages

13 août 2011, 22:14

Bonjour tout le monde !

J'essaie actuellement de créer un site, mais je rencontre le problème suivant :

J'aimerais que lorsque l'utilisateur se connecte avec son pseudo et son mot de passe, certains éléments du menu s'ajoutent et d'autres s'enlèvent. J'ai donc utiliser un concept simple afin de détecter si l'utilisateur est connecté ou non :
Lorsque l'utilisateur est connecté, la valeur d'une table d'une base de donnée passe de 0 à 1, et inversement lorsqu'il se déconnecte !

Je serais donc très reconnaissant si quelqu'un réussissait à me traduire le code suivant :

si la valeur de la colonne online de la table membres est égale à 1, alors afficher "OK", sinon, ne rien faire.

Merci d'avance à celui ou celle qui pourra m'apporter de l'aide ! :priere:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 août 2011, 00:17

salut,

il ne s'agit que d'un if.

par contre je t'invite plutôt a utiliser les sessions, car la tu ne pourra savoir sur quel pc l'utilisateur est connecter et ça va vite être le brin.
pour cela les sessions php


@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 8 Messages

14 août 2011, 11:54

Bonjour !

Merci d'avoir répondu !
J'ai bien tenté, mais je suis obligé d'intégrer des pages qui doivent déjà être intégrées dans une des pages (connect.php) qui est ma page de connexion, et dès que je les réinsère ailleurs, j'ai une erreur de boucle sans fin ! :(

Même en utilisant une fois require_once pour une utilisation, puis include_once pour une autre, cela ne fonctionne pas !
Je suis débutant et n'ai fait qu'utiliser un script trouvé sur internet ! :s

Voici ce qui pose problème :

<?php
if(!@$_SESSION['session'])
    {
    require_once('config.php');
    $titre_page='Index';
if(isset($_GET['erreur']))
    {
    echo'<span class="erreur">';
    $erreur=$_GET['erreur'];
    if($erreur=="pseudo" )
        {
        echo'<img src="images/erreur.png">';
        }
    if($erreur=="passe" )
        {
        echo'<img src="images/erreur.png">';
        }
    if($erreur=="connexion" )
        {
        echo'<img src="images/erreur.png">';
        }
    echo'</span>';
    }
    ?>
<form method="post" action="login.php">
<table  width="300" border="0" align="center">
<tr>
<td><label for="pseudo"><img src="images/pseudo.png"></label></td>
<td><input type="text" name="pseudo" id="connexion" />
</td>
</tr>
<tr>
<td><label for="mdp"><img src="images/pass.png"></label></td>
<td><input type="password" name="mdp" id="connexion" />
</td>
</tr>
<tr>
<td><br>
    <div id="divgo">
    <input type="image" src="images/go.png" />
    </div>
</td>
</tr>
</table>
</form>
<?php
if($localite != 'local')
echo'<br /><a href="perdu.php">Mot de passe perdu ?</a>';
echo'</div>';
    }
else
    {
    require_once('config.php');
    require_once('verifications.php');
    $titre_page='Index membres';
    include_once('bas.php');
    echo'<div align="center"><font size="3" face="cooper">Bienvenue '. $pseudo .' !</font><br />
    <br /><a href="modifier.php"><img src="images/modifier.png"></a>
    <a href="logout.php"><img src="images/deconnect.png"></a>';
    }
include_once('bas.php');
?>

Comme tu peux le voir, ces pages sont inclues plusieurs fois dans ce code : config.php et verifications.php

L'auteur à laissé ce message en plus :
Citation :

/////////AJOUTS DE PAGES/////////// 

Si vous souhaitez ajouter une page seulement pour les membres identifiés ajoutez ce code en haut (tout au début) : 
<?php 
session_start(); 
require_once('config.php'); 
require_once('verifications.php'); 
$titre_page='le titre de la page'; 
include_once('haut.php'); 
?>
Seulement en l'ajoutant et en enlevant le session_start(); déjà présent, j'obtiens ceci :
Cette page Web présente une boucle de redirection.
La page Web à l'adresse http://localhost/connect.php?erreur=connexion a déclenché trop de redirections. Pour résoudre le problème, effacez les cookies de ce site ou autorisez les cookies tiers. Si le problème persiste, il peut être dû à une mauvaise configuration du serveur et n'être aucunement lié à votre ordinateur.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 août 2011, 13:15

ben telechargement.php devrait commencer comme ça
<?php
session_start();
require_once('config.php');
require_once('verifications.php');
$titre_page='le titre de la page';
include_once('haut.php');
// apres faut utiliser les sessions.
?>
a tu compris le fonctionnement des sessions ?

si oui qu'a tu tenté comme code ?

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 8 Messages

14 août 2011, 14:30

Telechargement.php est la page qui est modifiée si l'utilisateur se connecte ?

une session n'est elle pas une sorte d'identifiant donné à l'utilisateur lorsque celui ci se connecte ?
ben telechargement.php devrait commencer comme ça
<?php
session_start();
require_once('config.php');
require_once('verifications.php');
$titre_page='le titre de la page';
include_once('haut.php');
// apres faut utiliser les sessions.
?>

a tu compris le fonctionnement des sessions ?

si oui qu'a tu tenté comme code ?

@+
Il semblerait que je n'ai pas comprit alors ! :( Je pensait que la page haut.php contenait le code à ajouter à la page une fois l'utilisateur connecté, et que ceci était possible grâce au session_start(); et aux require_once(); utilisés dans le code suivant donné par l'auteur !
/////////AJOUTS DE PAGES///////////

Si vous souhaitez ajouter une page seulement pour les membres identifiés ajoutez ce code en haut (tout au début) :
<?php
session_start();
require_once('config.php');
require_once('verifications.php');
$titre_page='le titre de la page';
include_once('haut.php');
?>