Un systéme d'inscription pour son site ?

kitt57 Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   -  
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aimerais savoir comment fait-on pour exiger une inscription pour acceder a son site web ?

Merçi de vos réponse
A voir également:

8 réponses

kitt57 Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   31
 
J'ai reussi mais j'ai un probléme ; il me marque body balise body interdit
Pourquoi ? Que faire ? ( tenez le code )
CREATE TABLE membre (
id int(11) NOT NULL auto_increment,
login text NOT NULL,
pass_md5 text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;

<?php

if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {

$base = mysql_connect ('serveur', 'login', 'password');
mysql_select_db ('nom_base', $base);


$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

mysql_free_result($req);
mysql_close();


if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}

elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}

else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
</head>

<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="inscription.php">Vous inscrire</a>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html>
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>

<html>
<head>
<title>Espace membre</title>
</head>

<body>
Bienvenue<?php echo htmlentities(trim($_SESSION['login'])); ?>!<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
1.<?php

2.session_start();
3.session_unset();
4.session_destroy();
5.header('Location: index.php');
6.exit();
7.?>
<?php
/
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {

if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) {

if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('serveur', 'login', 'password');
mysql_select_db ('nom_base', $base);


$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

if ($data[0] == 0) {
$sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
else {
$erreur = 'Un membre possède déjà ce login.';
}
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Inscription</title>
</head>

<body>
Inscription à l'espace membre :<br />
<form action="inscription.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
<input type="submit" name="inscription" value="Inscription">
</form>
<?php
if (isset($erreur)) echo '<br />',$erreur;
?>
</body>
</html>

Dite moi si il y a des erreur merci pour votre aide
1
avion-f16 Messages postés 19254 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Tu devras apprendre et utiliser le PHP et le SQL.
Recherche avant de demander où et comment.
0
David
 
commentaire débile. parfois on se demande a quoi peuvent bien servir tout ses sites si l'on peut pas poser une simple question. Les bons penseurs ou les "malins" devraient l'être d'avantage et ne pas répondre si la question est trop peu important à leurs yeux...
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Ce que voulait dire avion, c'est que beaucoup attendent que la réponse leur tombe du ciel.
Faire quelques recherche permet de facilement trouver des réponses sans être dépendant des autres.
De plus, il l'avait déjà lancé sur une piste: le php.
Finalement sa réponse n'était en rien "débile".
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Il faut faire un formulaire d'inscription et faire une condition en PHP pour contrôler si le membre est connecté.

Tu aura de quoi t'aider ici: http://www.lephpfacile.com/howto/10-comment-faire-un-espace-membre-en-php
Pour le reste, je t'invite à apprendre le PHP.
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Pour plus de lisibilité, peux tu utiliser la balise <code> et séparer les différents fichiers de manière clair.
Merci.
0

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

Posez votre question
kitt57 Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   31
 
Ok alors attend:
0
kitt57 Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   31
 
Jvé pionssé et jre . Bonne nuit
0
Lolita
 
Se sujet c'est eteind il y a longtemp !

voici le code de Kitt57

CREATE TABLE membre (
id int(11) NOT NULL auto_increment,
login text NOT NULL,
pass_md5 text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;

<?php

if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {

$base = mysql_connect ('serveur', 'login', 'password');
mysql_select_db ('nom_base', $base);


$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

mysql_free_result($req);
mysql_close();


if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}

elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}

else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
</head>

<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="inscription.php">Vous inscrire</a>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html>
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>

<html>
<head>
<title>Espace membre</title>
</head>

<body>
Bienvenue<?php echo htmlentities(trim($_SESSION['login'])); ?>!<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
1.<?php

2.session_start();
3.session_unset();
4.session_destroy();
5.header('Location: index.php');
6.exit();
7.?>
<?php
/
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {

if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) {

if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('serveur', 'login', 'password');
mysql_select_db ('nom_base', $base);


$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

if ($data[0] == 0) {
$sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
else {
$erreur = 'Un membre possède déjà ce login.';
}
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Inscription</title>
</head>

<body>
Inscription à l'espace membre :<br />
<form action="inscription.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
<input type="submit" name="inscription" value="Inscription">
</form>
<?php
if (isset($erreur)) echo '<br />',$erreur;
?>
</body>
</html> 
0
anthoine20 Messages postés 31 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Je suis actuellement en train de créer un espace membre, mais j'ai un peu de mal à comprendre le système ce code ou doit-il être mis et surtout comment créer le champs sur la page... Sachant que j'utilise pour la création de mon site du XHTML/CSS

Je vous remercie
0
avion-f16 Messages postés 19254 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Salut,
Ce code est illisible, il n'y a aucune indentation car l'auteur n'a pas utilisé la balise <code> dans son message.
Je n'ai pas vérifié la sécurité, et pour le peu que j'en ai lu, il y a des parties qui semblent bizarres.

Crée plutôt le tiens à partir d'aucun code.
C'est ainsi qu'on apprend, pas en recopiant les codes existants.
0