IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Formulaire d'inscription [Débutant(e)]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 29
    Par défaut Formulaire d'inscription
    bonjour.
    moi et quelques potes somme en train de programmer un MORPG (www.clearday.c.la)
    pour le C++ on ce démerde coté graphique aussi.
    le problème c'est le site ^^.
    j'ai quelque basses de HTML et de CSS et un peut de JAVASCRIPT.
    nous avons une base mysql ou est stocké tout les nom d'utilisateur et mot de passe.
    étant des billes en PHP mysql
    je voudrai savoir comment créer une inscription via le site.
    voici la base de donnée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE TABLE `rc_accounts` (
      `account_id` int(11) unsigned NOT NULL auto_increment,
      `username` varchar(32) NOT NULL default '',
      `password` varchar(32) NOT NULL default '',
      `email` varchar(32) NOT NULL default '',
      `isdm` tinyint(4) NOT NULL default '0',
      `isbanned` tinyint(4) NOT NULL default '0',
      `ignore` text NOT NULL default '',
      PRIMARY KEY  (`account_id`)
    ) TYPE=MyISAM;
    cordialement neo22

  2. #2
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 163
    Par défaut
    bonjour,

    voici un code à adapter bien sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    <?php
     
    include("fonctions.php");
    include ( "inc1/header.html" ) ;
     
    ?>
     
     
     
     
     
    	<div id="menu">
     
    		<div class="element_menu">
    			<h3>Titre menu</h3>
    			<ul>
               <li><a href="index1.php">Accueil</a></li>
               <li><a href="livredor.php">Livre d'or</a></li>
    		   <li><a href="inscription.php">S'inscrire</a></li>
    		   </ul>
     
     
    		</div>
     
    		<div class="element_menu">
    			<h3>Titre menu</h3>
    			<ul>
               <li><a href="page4.html">Lien</a></li>
               <li><a href="page5.html">Lien</a></li>
               <li><a href="page6.html">Lien</a></li>
    			</ul>
     
     
    		</div>
     
    </div>
     
    		<div id="corps">
    <CENTER><TABLE width=500px>
    <FORM name='inscription' method='POST' action='inscription.php'>
    <TR><TD width=100%> Entrez votre identifiant</TD>
    <TD><INPUT type='text' size=40 name='identifiant' value='<?php if (isset($identifiant)) echo $identifiant?>'></TD><BR>
    <TR><TD width=100%> Entrez votre mot de passe </TD>
    <TD><INPUT type='password' size=40 name='mot_de_passe' value='<?php if (isset($identifiant)) echo $mot_de_passe?>'></TD><BR>
    <TR><TD width=100%> Entrez votre nom</TD>
    <TD><INPUT type='text' size=40 name='nom' value='<?php if (isset($identifiant)) echo $nom?>'></TD><BR>
    <TR><TD width=100%> Entrez votre prenom </TD>
    <TD><INPUT type='text' size=40 name='prenom' value='<?php if (isset($identifiant)) echo $prenom?>'></TD><BR>
    <TR><TD width=100%> Entrez votre adresse mail</TD>
    <TD><INPUT type='text' size=40 name='adresse' value='<?php if (isset($identifiant)) echo $adresse?>'></TD><BR>
    <TR><TD colspan = 2 align='center'><INPUT type='submit' type=submit name='inscription' onclick='cryptage();' value='Inscription'>
    </TD><br><br>
    </TR>
    </TABLE>
    </CENTER>
    </div>
    <?php
    if(isset($_POST['identifiant'])){
    	$identifiant=$_POST['identifiant'];
    	$rqt="Select identifiant from utilisateur where identifiant='".$identifiant."';";
    	$resultat=pg_fetch_array(requete($rqt));
     
    	if($identifiant!=$resultat[0]){
    	    $code=md5(round(0,32).time());
    		$rqt="Insert into utilisateur(identifiant,mot_de_passe,nom,prenom,adresse,id_type,numero_a)
    				values('".$_POST['identifiant']."',
    				'".$_POST['mot_de_passe']."',
    				'".$_POST['nom']."',
    				'".$_POST['prenom']."',
    				'".$_POST['adresse']."',
    				'".(2)."',
    				'".$code."');";
    		$res = requete($rqt);
     
    	 $headers ='From: "Administration"<administrateur@ifide.com>'."\n";
         $headers .='Reply-To: ludovic.rippinger@orange.fr'."\n";
         $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
         $headers .='Content-Transfer-Encoding: 8bit';
     
         $message ="<html><head><title>Activation de votre compte</title></head>
    	 <body>
    	 
    	 <b> Bienvenue , et merci de vous êtes inscrit.
    	 Pour valider votre inscription , cliquez sur le lien ci-dessous </br>
    	 
    	 <a href='http://localhost/forum/validation.php?user=".$_POST['identifiant']."&code=".$code."'>Activation</a>
    	 
    	 </body></html>";
     
         if(mail($_POST['adresse'], 'Activation de votre compte', $message, $headers))
         {
              echo 'Le message a été envoyé';
         }
         else
         {
              echo 'Le message n\'a pu être envoyé';
         } 
     
    	}else{
    	echo ("<center><FOnt color = red>Ce pseudonyme est déja utilisé</font></center>");
    	}
    }
    ?>
     
    <?php
    include ( "inc1/footer.html" ) ;
    ?>

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 29
    Par défaut
    ok je vais mi coller merci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    include("fonctions.php");
    include ( "inc1/header.html" );
    ou puije trouver c'est deux page?
    cordialement neo.

  4. #4
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    Citation Envoyé par davidbalan Voir le message
    ok je vais mi coller merci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    include("fonctions.php");
    include ( "inc1/header.html" );
    ou puije trouver c'est deux page?
    cordialement neo.
    C'est un exemple justement ...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 29
    Par défaut
    ok ces deux include ne servent a rien enfin plus ou moin ^^.
    on pourrai s'en passer.
    autrement ou doije configurer le serveur l'identifiant la base de donnée etc?
    je doit créer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    include("indentification.php");
    ?
    sur ce principe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    $connection = mysql_connect("localhost","root","motdepasse");
    if ( ! $connection )
    die ("connection impossible");
    ?> 
    <?php
    $mabasededonnee="Client";
    mysql_select_db($mabasededonnee) or die ("pas de connection");
    ?>
    plein de questions mais je suis très NUL comme vous pouvez le voir.
    cordialement neo.
    merci de votre aide précieuse.

  6. #6
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    oui voilà tu créés un fichier de connexion, le nom ne doit pas être obligatoirement implicite pour ne pas attirer l'attention ^^

    tu peux te servir de constante comme ceci :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // define our database connection
    define('DB_SERVER', '127.0.0.1:3306');
    define('DB_SERVER_USERNAME', 'root');
    define('DB_SERVER_PASSWORD', 'mysql50');
     
    // tu lances ainsi la connexion
    $connection = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD);

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 29
    Par défaut
    voici le script final:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <?php
    include("connect.php");
    ?>
    <?php
    $mabasededonnee="clearday";
    mysql_select_db($mabasededonnee) or die ("pas de connection");
    ?> 
     
    <CENTER><TABLE width=500px>
    <FORM name='inscription' method='POST' action='inscription.php'>
    <TR><TD width=100%> Entrez votre identifiant</TD>
    <TD><INPUT type='text' size=40 name='identifiant' value='<?php if (isset($identifiant)) echo $identifiant?>'></TD><BR>
    <TR><TD width=100%> Entrez votre mot de passe </TD>
    <TD><INPUT type='password' size=40 name='mot_de_passe' value='<?php if (isset($identifiant)) echo $mot_de_passe?>'></TD><BR>
    <TR><TD width=100%> Entrez votre adresse mail</TD>
    <TD><INPUT type='text' size=40 name='adresse' value='<?php if (isset($identifiant)) echo $adresse?>'></TD><BR>
    <TR><TD colspan = 2 align='center'><INPUT type='submit' type=submit name='inscription' onclick='cryptage();' value='Inscription'>
    </TD><br><br>
    </TR>
    </TABLE>
    </CENTER>
    </div>
    <?php
    if(isset($_POST['identifiant'])){
    	$identifiant=$_POST['identifiant'];
    	$rqt="Select identifiant from utilisateur where identifiant='".$identifiant."';";
    	$resultat=pg_fetch_array(requete($rqt));
     
    	if($identifiant!=$resultat[0]){
    	    $code=md5(round(0,32).time());
    		$rqt="Insert into rc_accounts(username,password,email)
    				values('".$_POST['identifiant']."',
    				'".$_POST['mot_de_passe']."',
    				'".$_POST['adresse']."');";
    		$res = requete($rqt);
     
    	 $headers ='From: "Administration"<administrateur@ifide.com>'."\n";
         $headers .='Reply-To: ludovic.rippinger@orange.fr'."\n";
         $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
         $headers .='Content-Transfer-Encoding: 8bit';
     
         $message ="<html><head><title>inscription Clearday</title></head>
    	 <body>
    	 
    	 <b>bonjour,</br>
    	votre compte clearday à bien était enregistré dans notre base de donnée.</br>
    	vous pouvez des à présent télécharger le jeu à partir de votre interface membre</br>
    	bon jeu a tous.</br>
    	cordialement</br>
    	les admins.</br>	 
    	 </body></html>";
     
         if(mail($_POST['adresse'], 'Activation de votre compte', $message, $headers))
         {
              echo 'un message de confirmation a été envoyé';
         }
         else
         {
              echo 'Le message n\'a pu être envoyé';
         } 
     
    	}else{
    	echo ("<center><FOnt color = red>Ce pseudonyme est déja utilisé</font></center>");
    	}
    }
    ?>
    problème vous pouvez le tester par vous même
    quand on appui sur le submit on atterri sur un superbe ERROR 404
    de quoi cela peut t'il venir et y a t'il de grosse erreur dans ce script pouvant l'enpéché de fonctionner?
    cordialement neo

  8. #8
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    toujours avec une constante :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    // define our database connection
    	define('DB_SERVER', '127.0.0.1:3306');
    	define('DB_SERVER_USERNAME', 'root');
    	define('DB_SERVER_PASSWORD', 'mysql50');
     
    $connection = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD);

    1er solution :
    il faut rajouter c'est deux éléments pour sélectionner la base
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    define('DB_DATABASE', 'test');
    $db_selected = mysql_select_db(DB_DATABASE, $connection);
    s'en suit une requête de ce genre :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT id, nom, prenom FROM joueur;
    2eme solution :
    une autre solution est de renseigner le nom de la base de donnée dans la requête. En utilisant cette méthode il n'est plus utile d'utiliser la fonction mysql_select_db()

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT cj.id, cj.nom, cj.prenom FROM clearday.joueur cj;

    comme tu as pu le voir : la sélection de la table c'est dans la requête que cela se passe.

    cj étant un alias pour raccourcir l'écriture ...

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 29
    Par défaut
    petite corection de mon dernier méssage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <?php
    include("connect.php");
    ?>
    <?php
    define('DB_DATABASE', 'clearday');
    $db_selected = mysql_select_db(DB_DATABASE, $connection);
    ?> 
     
    <CENTER><TABLE width=500px>
    <FORM name='inscription' method='POST' action='inscription.php'>
    <TR><TD width=100%> Entrez votre identifiant</TD>
    <TD><INPUT type='text' size=40 name='identifiant' value='<?php if (isset($identifiant)) echo $identifiant?>'></TD><BR>
    <TR><TD width=100%> Entrez votre mot de passe </TD>
    <TD><INPUT type='password' size=40 name='mot_de_passe' value='<?php if (isset($identifiant)) echo $mot_de_passe?>'></TD><BR>
    <TR><TD width=100%> Entrez votre adresse mail</TD>
    <TD><INPUT type='text' size=40 name='adresse' value='<?php if (isset($identifiant)) echo $adresse?>'></TD><BR>
    <TR><TD colspan = 2 align='center'><INPUT type='submit' type=submit name='inscription' onclick='cryptage();' value='Inscription'>
    </TD><br><br>
    </TR>
    </TABLE>
    </CENTER>
    </div>
    <?php
    if(isset($_POST['identifiant'])){
    	$identifiant=$_POST['identifiant'];
    	$rqt="Select username from rc_accounts where username='".$identifiant."';";
    	$resultat=pg_fetch_array(requete($rqt));
     
    	if($identifiant!=$resultat[0]){
    	    $code=md5(round(0,32).time());
    		$rqt="Insert into rc_accounts(username,password,email)
    				values('".$_POST['identifiant']."',
    				'".$_POST['mot_de_passe']."',
    				'".$_POST['adresse']."');";
    		$res = requete($rqt);
     
    	 $headers ='From: "clearday Administration"<clearday@live.fr>'."\n";
         $headers .='Reply-To: clearday@live.fr'."\n";
         $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
         $headers .='Content-Transfer-Encoding: 8bit';
     
         $message ="<html><head><title>inscription Clearday</title></head>
    	 <body>
    	 
    	 <b>bonjour,</br>
    	votre compte clearday à bien était enregistré dans notre base de donnée.</br>
    	vous pouvez des à présent télécharger le jeu à partir de votre interface membre</br>
    	bon jeu a tous.</br>
    	cordialement</br>
    	les admins.</br>	 
    	 </body></html>";
     
         if(mail($_POST['adresse'], 'Activation de votre compte', $message, $headers))
         {
              echo 'un message de confirmation a été envoyé';
         }
         else
         {
              echo 'Le message n\'a pu être envoyé';
         } 
     
    	}else{
    	echo ("<center><FOnt color = red>Ce pseudonyme est déja utilisé</font></center>");
    	}
    }
    ?>
    ne me manque plus que le login mais la c'est l'inverse avec des get (à peut pret j'aurai surement quelque questions à poser)
    cordialement

Discussions similaires

  1. [MySQL] Quelqu'un pourrait il m'aider à vérifier mon formulaire d'inscription?
    Par Pepito2030 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/07/2006, 00h56
  2. [Newbie]*Formulaire d'inscription pour théâtre
    Par [Débutant]*Ludo dans le forum Access
    Réponses: 1
    Dernier message: 16/05/2006, 18h09
  3. Formulaire d'inscription
    Par ero-sennin dans le forum Langage
    Réponses: 3
    Dernier message: 29/01/2006, 19h23
  4. Creation d'un formulaire d'inscription
    Par whbh dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 12
    Dernier message: 21/01/2006, 14h04
  5. Formulaire d'inscription
    Par Gourouni dans le forum ASP
    Réponses: 6
    Dernier message: 02/12/2004, 16h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo