Tuto pour creer espace membre probleme

Résolu/Fermé
Profil bloqué - 31 mai 2010 à 10:48
 Utilisateur anonyme - 1 juin 2010 à 18:57
Bonjour,
je fait un tuto pour creer mon espace m'embre
un moment on me demande sa :
Dans la fonction sqlquery() , nous utilisons une fonction nommée queries() , il faut donc la définir :
Code : PHP

<?php
function queries($num = 1)
{
global $queries;
$queries = $queries + intval($num);
}
?>



Nous allons maintenant réaliser une fonction pour nous connecter en une seule ligne ( :D ) à la base de données.
Code : PHP



<?php
function connexionbdd()
{
//Définition des variables de connexion à la base de données
$bd_nom_serveur='localhost';
$bd_login='root';
$bd_mot_de_passe='';
$bd_nom_bd='espace_membre';

//Connexion à la base de données
mysql_connect($bd_nom_serveur, $bd_login, $bd_mot_de_passe);
mysql_select_db($bd_nom_bd);
mysql_query("set names 'utf8'");
}
?>


Si cette fonction est appelée, la connexion à la base de données se fait automatiquement.
La ligne <?php mysql_query("set names 'utf8'"); ?> définit l'encodage des transferts entre la base de données et les pages PHP (donc Apache).

On peut passer à actualiser_session() .
Code : PHP






<?php
function actualiser_session()
{
if(isset($_SESSION['membre_id']) && intval($_SESSION['membre_id']) != 0) //Vérification id
{
//utilisation de la fonction sqlquery, on sait qu'on aura qu'un résultat car l'id d'un membre est unique.
$retour = sqlquery("SELECT membre_id, membre_pseudo, membre_mdp FROM membres WHERE membre_id = ".intval($_SESSION['membre_id']), 1);

//Si la requête a un résultat (c'est-à-dire si l'id existe dans la table membres)
if(isset($retour['membre_pseudo']) && $retour['membre_pseudo'] != '')
{
if($_SESSION['membre_mdp'] != $retour['membre_mdp'])
{
//Dehors vilain pas beau !
$informations = Array(/*Mot de passe de session incorrect*/
true,
'Session invalide',
'Le mot de passe de votre session est incorrect, vous devez vous reconnecter.',
'',
'membres/connexion.php',
3
);
require_once('../information.php');
vider_cookie();
session_destroy();
exit();
}

else
{
//Validation de la session.
$_SESSION['membre_id'] = $retour['membre_id'];
$_SESSION['membre_pseudo'] = $retour['membre_pseudo'];
$_SESSION['membre_mdp'] = $retour['membre_mdp'];
}
}
}

else //On vérifie les cookies et sinon pas de session
{
if(isset($_COOKIE['membre_id']) && isset($_COOKIE['membre_mdp'])) //S'il en manque un, pas de session.
{
if(intval($_COOKIE['membre_id']) != 0)
{
//idem qu'avec les $_SESSION
$retour = sqlquery("SELECT membre_id, membre_pseudo, membre_mdp FROM membres WHERE membre_id = ".intval($_COOKIE['membre_id']), 1);

if(isset($retour['membre_pseudo']) && $retour['membre_pseudo'] != '')
{
if($_COOKIE['membre_mdp'] != $retour['membre_mdp'])
{
//Dehors vilain tout moche !
$informations = Array(/*Mot de passe de cookie incorrect*/
true,
'Mot de passe cookie erroné',
'Le mot de passe conservé sur votre cookie est incorrect vous devez vous reconnecter.',
'',
'membres/connexion.php',
3
);
require_once('../information.php');
vider_cookie();
session_destroy();
exit();
}

else
{
//Bienvenue :D
$_SESSION['membre_id'] = $retour['membre_id'];
$_SESSION['membre_pseudo'] = $retour['membre_pseudo'];
$_SESSION['membre_mdp'] = $retour['membre_mdp'];
}
}
}

else //cookie invalide, erreur plus suppression des cookies.
{
$informations = Array(/*L'id de cookie est incorrect*/
true,
'Cookie invalide',
'Le cookie conservant votre id est corrompu, il va donc être détruit vous devez vous reconnecter.',
'',
'membres/connexion.php',
3
);
require_once('../information.php');
vider_cookie();
session_destroy();
exit();
}
}

else
{
//Fonction de suppression de toutes les variables de cookie.
if(isset($_SESSION['membre_id'])) unset($_SESSION['membre_id']);
vider_cookie();
}
}
}

function vider_cookie()
{
foreach($_COOKIE as $cle => $element)
{
setcookie($cle, '', time()-3600);
}
}
?>

ou faut t'il que je maite sa dans notepad++ ?
merci de votre compréhention bone journée

4 réponses

Utilisateur anonyme
31 mai 2010 à 12:41
le principe pour faire un espace membre

c'est un ensemble de fonction et de contions PHP
qui permettent de distinguer un utilisateur parmis les autres

a partir de la
il faut creer un base de donnée mysql qui contient les infos sur chaque membre
la page pour se connecter
et les differentes pages dont le contenu sera variable selon le membre

tu peut trouver beaucoup de sript tout fait comme celui que tu as
mais de la a pouvoir les adapter pour les utiliser a tes besoins ...


http://www.siteduzero.com/tutoriel-3-10017-creer-son-forum-de-toutes-pieces.html
tient, dans ce tutos (fait a la base pour un forum)
il ya toutes les etapes pour creer toi meme ton espace membre
en comprenant ce que tu fait
1
Utilisateur anonyme
31 mai 2010 à 11:25
est-ce que tu comprend au moins un minimum
comment fonctionne le script que tu as ???

si ce n'est pas le cas
commence par apprendre le PHP, le mysql et le xHTML

de plus
ton script utilise des fonctions mysql qui deviennent obsoletes

n'utilise pas les fonctions "mysql_query" etc ...
a la place il faut faire de la programmation orientée objet

https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql
0
Profil bloqué
31 mai 2010 à 12:28
bonjour merci bc mais je veux faire un espace client ou il peuvent s'inscrir creer leur profil,qu'ils peuvent s'envoyer des messages ...
0
Profil bloqué
1 juin 2010 à 16:10
bonjour pyrogoto tu es très patient tous sa pour moi merci beaucoup je regarde sa desuite ;) merci encore :D
0
Utilisateur anonyme
1 juin 2010 à 16:41
pas de probleme
je fait sa pour aider
;)
0
Profil bloqué
1 juin 2010 à 17:40
c'est très gentil par ce qu' il yen a même souvent quand tu demande de l'aide il te dise que l'on a que chercher sur google ou bref mais toi nan merci beaucoup tu es émable ;)
0
Utilisateur anonyme
1 juin 2010 à 18:57
je le dis aussi quand c'est justifié

mais pour des choses comme un espace membre
il faut un truc personalisé
je pense pas qu'on puisse le faire avec des scripts trouvés a droite a gauche sur google

ce qu'il faut
c'est comprendre une methodologie
et aprendre les outils et les langages pour mettre en oeuvre ces methodes
sur https://openclassrooms.com/fr/ par exemple
0