Formulaire d'inscription au site

Eléphant du PHP | 122 Messages

07 juil. 2008, 15:27

Hello,

Voici mon deuxième script sur lequel j'ai un petit soucis:

Mon formulaire d'inscription au site de l'association.

Voici le script du formulaire d'inscription:
<link rel="stylesheet" media="screen" type="text/css" title="Envoi" href="../gestion/envoi.css" />

<form method="POST" action="verif_inscription.php">

<fieldset>
       <legend>S'inscrire au site ABCFibromyalgie</legend> <!-- Titre du fieldset -->		
	
	<fieldset><legend>INFORMATIONS PERSONNELLES</legend>
	
	<p> <label for="inscr_prenom">Prénom :</label><br />
	<input type="text" name="inscr_prenom" value="" id="inscr_prenom"/> </p>
	<!-- 	Essayez de cliquer sur le texte "Votre pseudo" : vous allez voir que le curseur se place automatiquement dans la zone de texte correspondante.
		On a "lié" le label avec sa zone de texte pour qu'on sache à quoi il correspond. -->
		
	<p> <label for="inscr_nom_famille">Nom :</label><br />
	<input type="text" name="inscr_nom_famille" value="" id="inscr_nom_famille"/> </p>
	
	<p> <label for="inscr_sexe">Vous êtes plutôt :</label><br />
       <select name="inscr_sexe" id="inscr_sexe">
           <option value="Femme">Une femme</option>
		   <option value="Homme">Un homme</option>
		   <option value="Je ne sais pas">Je ne sais pas</option>           
       </select>
   </p>
	
	<p> <label for="inscr_lieu">Vous vivez :</label><br />
       <select name="inscr_lieu" id="inscr_lieu">
			<optgroup label="Europe">
               <option value="allemagne">Allemagne</option>
               <option value="autriche">Autriche</option>
               <option value="belgique">Belgique</option>
               <option value="bulgarie">Bulgarie</option>
               <option value="chypre">Chypre</option>
               <option value="danemark">Danemark</option>
               <option value="espagne">Espagne</option>
               <option value="estonie">Estonie</option>
               <option value="finlande">Finlande</option>
               <option value="france" selected="selected">France</option>
               <option value="grece">Grèce</option>
               <option value="hongrie">Hongrie</option>
               <option value="irlande">Irlande</option>
               <option value="italie">Italie</option>
               <option value="lettonie">Lettonie</option>
               <option value="lituanie">Lituanie</option>
               <option value="luxembourg">Luxembourg</option>
               <option value="malte">Malte</option>
               <option value="pays-bas">Pays-Bas</option>
               <option value="pologne">Pologne</option>
               <option value="portugal">Portugal</option>
               <option value="roumanie">Roumanie</option>
               <option value="royaume-uni">Royaume-Uni</option>
               <option value="slovaquie">Slovaquie</option>
               <option value="slovenie">Slovénie</option>
               <option value="suede">Suède</option>
               <option value="tchequie">Tchéquie</option>
			</optgroup>
			<optgroup label="Amérique du Nord">
				<option value="canada">Canada</option>
				<option value="etats-unis">Etats-Unis</option>
				<option value="groenland">Groenland</option>
			</optgroup>
			<optgroup label="Amérique centrale">
				<option value="belize">Belize</option>
				<option value="costa-rica">Costa Rica</option>
				<option value="guatemala">Guatemala</option>
				<option value="honduras">Honduras</option>
				<option value="nicaragua">Nicaragua</option>
				<option value="panama">Panama</option>
				<option value="salvador">Salvador</option>
			</optgroup>
			<optgroup label="Amérique du Sud">
				<option value="argentine">Argentine</option>
				<option value="bolivie">Bolivie</option>
				<option value="bresil">Brésil</option>
				<option value="chili">Chili</option>
				<option value="colombie">Colombie</option>
				<option value="equateur">Equateur</option>
				<option value="guyana">Guyana</option>
				<option value="guyane-francaise">Guyane Française</option>
				<option value="paraguay">Paraguay</option>
				<option value="perou">Pérou</option>
				<option value="suriname">Suriname</option>
				<option value="uruguay">Uruguay</option>
				<option value="venezuela">Venezuela</option>
			</optgroup>
			<optgroup label="Asie Centrale">
               <option value="afghanistan">Afghanistan</option>
               <option value="kazakhstan">Kazakhstan</option>
               <option value="kirghizistan">Kirghizistan</option>
               <option value="ouzbékistan">Ouzbékistan</option>
               <option value="tadjikistan">Tadjikistan</option>
               <option value="turkménistan">Turkménistan</option>
	        </optgroup>
			<optgroup label="Asie Orientale">
               <option value="chine">Chine</option>
               <option value="coree_du_nord">Corée du Nord</option>
               <option value="coree_du_sud">Corée du Sud</option>
               <option value="japon">Japon</option>
               <option value="mongolie">Mongolie</option>
			</optgroup>
			<optgroup label="Asie Occidentale">
               <option value="arabie_saoudite">Arabie Saoudite</option>
               <option value="bahrein">Bahrein</option>
               <option value="emirats_arabes_unis">Emirats Arabes Unis</option>
               <option value="iran">Iran</option>
               <option value="iraq">Iraq</option>
               <option value="israel">Israël</option>
               <option value="jordanie">Jordanie</option>
               <option value="koweit">Koweit</option>
               <option value="liban">Liban</option>
               <option value="oman">Oman</option>
               <option value="qatar">Qatar</option>
               <option value="syrie">Syrie</option>
               <option value="yemen">Yémen</option>
			</optgroup>
			<optgroup label="Asie du Sud-Est">
               <option value="birmanie">Birmanie (Myanmar)</option>
               <option value="brunei">Brunei</option>
               <option value="cambodge">Cambodge</option>
               <option value="indonesie">Indonésie</option>
               <option value="laos">Laos</option>
               <option value="malaisie">Malaisie</option>
               <option value="philippines">Philippines</option>
               <option value="singapour">Singapour</option>
               <option value="thailande">Thaïlande</option>
               <option value="vietnam">Viêt-Nam</option>
			</optgroup>
			<optgroup label="Sud de l'Asie">
               <option value="bangladesh">Bangladesh</option>
               <option value="bhoutan">Bhoutan</option>
               <option value="inde">Inde</option>
               <option value="maldives">Maldives</option>
               <option value="nepal">Népal</option>
               <option value="pakistan">Pakistan</option>
               <option value="sri_lanka">Sri Lanka</option>
			</optgroup>
       </select>
   </p>
		
	<p> <label for="inscr_pass">Choisissez votre mot de passe :</label><br />
	<input type="password" name="inscr_pass" id="inscr_pass" /> </p>
	
	<p> <label for="inscr_pass2">Retapez votre mot de passe :</label><br />
	<input type="password" name="inscr_pass2" id="inscr_pass2" /> </p>
	
	</fieldset>
<fieldset>
<p>
       <legend>INFORMATIONS VIRTUELLES</legend> <!-- Titre du fieldset -->
			
		<p> <label for="inscr_pseudo">Pseudonyme :</label><br />
		<input type="text" name="inscr_pseudo" id="inscr_pseudo"/> </p>

		<p> <label for="inscr_website">Site web ou blog :</label><br />
		<input type="text" name="inscr_website" id="inscr_website"/> </p>

		<p> <label for="inscr_instant_messenger">Messagerie instantané :</label><br />
		<input type="text" name="inscr_instant_messenger" id="inscr_instant_messenger"/> </p>

		<label for="inscr_auto_description">Décrivez-vous brièvement :</label> <br />
		<textarea name="inscr_auto_description" rows="8" cols="45" id="inscr_auto_description">ICI</textarea>

<p>	
	<p><input type="submit" name="envoyer" value="M'inscrire à ABCFibromyalgie"></p>
	<p><input type="reset" value="Effacer les champs" /></p>
	</form></p>
	</fieldset></p>
</fieldset>
</form>
Voici le script du formulaire de vérification de l'inscription:
<link rel="stylesheet" media="screen" type="text/css" title="Envoi" href="../gestion/envoi.css" />

<p>Je connais ton nom, c'est <?php echo $_POST['inscr_nom_famille']; ?> !</p>
<p>Je connais ton prénom, c'est <?php echo $_POST['inscr_prenom']; ?> !</p>
<p>Je connais ton sexe, c'est <?php echo $_POST['inscr_sexe']; ?> !</p>
<p>Je connais ton pays, c'est <?php echo $_POST['inscr_lieu']; ?> !</p>
<p>Je connais ton mot de pass, c'est <?php echo $_POST['inscr_pass']; ?> !</p>



<p>Je connais ton pseudo, c'est <?php echo $_POST['inscr_pseudo']; ?> !</p>
<p>Je connais ton site web ou ton blog, c'est <?php echo $_POST['inscr_website']; ?> !</p>
<p>Je connais ta messagerie instantané, c'est <?php echo $_POST['inscr_instant_messenger']; ?> !</p>
<p>Je connais ton auto-description, c'est <?php echo $_POST['inscr_auto_description']; ?> !</p>

<?php
$email = $_POST['email'];
$point = strpos($email,".");
$aroba = strpos($email,"@");

if($point=='')
{
echo "Votre email doit comporter un <b>point</b>";
}
elseif($aroba=='')
{
echo "Votre email doit comporter un <b>'@'</b>";
}
else
{
echo "Votre email est: '<a href=\"mailto:"."$email"."\"><b>$email</b></a>'";
}
?>
Bon les lignes que j'ai ajouté en haut, c'était juste pour moi pour vérifier l'envoi des variables ......

Bon je sais qu'il manque des choses pour l'injection en BDD Mysql ...

Voici le script de la BDD:
-- 
-- 
-- Structure de la table `membre`
-- 

CREATE TABLE `membre` (
  `id` varchar(20) NOT NULL,
  `inscr_prenom` varchar(40) NOT NULL,
  `inscr_nom_famille` varchar(40) NOT NULL,
  `inscr_sexe` varchar(10) NOT NULL,
  `inscr_lieu` varchar(20) default NULL,
  `inscr_pass` varchar(20) NOT NULL,
  `inscr_website` varchar(200) default NULL,
  `inscr_instant_messenger` varchar(50) default NULL,
  `inscr_auto_description` varchar(200) default NULL,
  `destination` varchar(60) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
J'aurai peut etre la réponse suite à mon précédent post ... mais on ne sait jamais des fois que ce script là interresse du monde ... ou en tout cas en partie ...

Et c'est pour cela que je fais appel à tout les experts qui sont sur ce site ...

Merci d'avance ...

ViPHP
ViPHP | 2291 Messages

07 juil. 2008, 15:32

C'est quoi la question :?:
Pour info pour voir si tes variqbles $_POST sont transmise un simple
echo '<pre>';
print_r($_POST);
echo'</pre>';
Suffit :wink:

Eléphant du PHP | 122 Messages

07 juil. 2008, 16:37

En fait, l'affichage que j'ai fais pour voir si les variables étaient transmises ne me sert qu'à moi ...

Je l'effacerai après ...

Le formulaire avec les champs à renseigner fonctionne bien.

Celui qui recoit les variables aussi (d'ou l'interet pour moi d'avoir mis un bout de script qui m'affiche ce qui est transmis).

Ce que je n'arrive pas à faire c'est ensuite que les variables sont transmises, c'est de les inserer dans ma BDD "membre"...

Donc j'aimerais bien que quelqu'un me montre le droit chemin ...

Merci d'avance ...

ViPHP
ViPHP | 2291 Messages

07 juil. 2008, 16:53

Un truc du genre :wink:
$prenom      = mysql_real_escape_string($_POST['inscr_prenom']);
     $nom_famille = mysql_real_escape_string($_POST['inscr_nom_famille']);
     $sexe        = mysql_real_escape_string($_POST['inscr_sexe']);
     $lieu        = mysql_real_escape_string($_POST['inscr_lieu']);
     $pass        = mysql_real_escape_string($_POST['inscr_pass']);
     $website     = mysql_real_escape_string($_POST['inscr_website']);
     $msn         = mysql_real_escape_string($_POST['inscr_instant_messenger']);






         $req_insert = "INSERT INTO
							membre
						SET
							id 			                = '',
							inscr_prenom 				= '".$prenom.",
							inscr_nom_famille 			= '".$nom_famille."',
							inscr_sexe 		            = '".$sexe."',
							inscr_lieu 				    = '".$lieu."',
							inscr_pass 		            = '".$pass."',
							inscr_website 			    = '".$website."',
							inscr_instant_messenger 	= '".$msn."'
							";
		$resultat = mysql_query($req_insert) or die("Erreur MySQL : Impossible d'enregistrée les données");


Eléphant du PHP | 122 Messages

11 juil. 2008, 15:19

Bon mon système d'inscription fonctionne ...

Par contre maintenant je voulais savoir ce que vous pensiez des systèmes de gestion de communauté ou de membre tout fait ???

Ca doit etre un peu long à tout adapté à sa propre BDD et tout et tout non ????

@+ et bon week-end ..

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

17 juil. 2008, 12:33

Modération :
Jackisback, si tu as une autre question ouvre un nouveau sujet,
cela te permettra d'avoir plus de réponses.

En plus, tu pourras mettre [Résolu] dès que ton problème évoqué ici sera réglé.

Merci de prendre le temps de lire les règlements.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 122 Messages

18 juil. 2008, 08:21

Je suis d'accord avec toi ...

Désolé...

Par contre je n'ai pas marqué résolu car le formulaire fonctionne mais je ne l'avais pas encore entierement finis ...

Il me reste deux trois choses à voir et après je le passe en RESOLU ... ca ne me gene pas bien au contraire ..... si ca peut aider ensuite quelqu'un ...

@ +

Eléphant du PHP | 122 Messages

01 oct. 2008, 10:46

C'est tout bon mon formulaire est finis et fonctionne..

Merci encore.