formulaire d'inscription à un évènement sans espace membre

Petit nouveau ! | 1 Messages

21 oct. 2014, 14:10

Bonjour à tous.
Je me mets tout juste au PHP et comme le dit le titre de mon sujet j"aimerais permettre à des gens de s'inscrire en ligne à diverses formations.
J"aimerais que cela se fasse sans espace membre mais j'aimerais tout de même récupérer le nom, le prénom et la formation choisie, afin de m'assurer que la même personne ne s'est pas déjà inscrite à la même formation.

Le code ci-dessous est celui auquel je comptais m'en tenir; il est fait à partir de codes récupéré ci et là et comporte un espace membre, que j'aimerais enlever. De plus une fois mon formulaire validé, j'ai une erreur comme quoi mes variables ne sont pas définies.

J'espère que vous pourrez m'aider sans me submerger de détails techniques qui pourraient m'embrouiller.


Merci d'avance

<?php
 ini_set('display_errors', 1);
 
if(!empty($_POST))
{
   extract($_POST);
   $valid = true;

   
   if(empty($nom))
   {
      $valid = false;
      $erreurnom = 'indiquez votre nom';
   }
   
   if(!empty($nom) && strlen($nom)<3)
   {
      $valid = false;
      $erreurnom = '3 caractères minimum';
   }
   if(empty($email))
   {
      $valid = false;
      $erreuremail = 'Indiquez votre e-mail';
   }
   
   if (!empty($email) && filter_var($email,FILTER_VALIDATE_EMAIL)===FALSE)
   {
      $valid = false;
      $erreuremail = 'Adresse e-mail invalide';
    }
	
// Connexion BDD
   
    try{
      $bdd = new PDO('mysql:host=localhost;dbname=aqinsgroupe' , 'root', '') or die(print_r($bdd->errorInfo()));
      $bdd->exec('SET NAMES utf8');
      }
   catch(Exception $e){
      die('Erreur:'.$e->getMessage());
   }
      

   // Verification si les champs sont utilisés
   
   $req = $bdd->prepare('SELECT id from formation WHERE email=email');
   $req->execute(array(':email'=>$email));
   if($req->rowCount()>0)
   {
      $valid = false;
      $erreurid = 'E-mail déjà utilisé';
   }

   $req->closeCursor();
   
   // Si tout est OK
   
  if($valid)
   {
      $hash = md5(rand(0,1000));
      $pass = rand(1000,5000);
      
      
      //  on envoi en BDD
      
      $req = $bdd->prepare('INSERT INTO formation (id,nom,prenom,age,num_tel1,formation_desiree,heure_debut,heure_fin,email,num_tel2,hash) VALUES (:id,:nom,:prenom,:age,:num_tel1,:formation_desiree,:heure_debut,:heure_fin,:email,:num_tel2,:hash)');
      $req->execute(array(
         'id'=>$id,
		 'nom'=>$nom,
		 'prenom'=>$prenom,
		 'age'=>$age,
		 'num_tel1'=>$num_tel1,
		 'formation_desiree'=>$formation_desiree,
		 'heure_debut'=>$heure_debut,
		 'heure_fin'=>$heure_fin,
		 'email'=>$email,
		 'num_tel2'=>$num_tel2
		       ));
      
      $req->closeCursor();
      $ok = 'Vous êtes inscrit desormais à la formation ".$formation_desiree." !';
      unset($nom);
      unset($email);
   }
      
}
?>








<!DOCTYPE html>
<!-- Building Web Forms: Capturing Form Data -->
<!-- Form data is captured into an array ] -->
<head>
    <meta charset="utf-8">
    <title>AQINS FORMATION</title>
    <link href="styles/style_formation_form.css" media="screen" rel="stylesheet" type="text/css" >
	<link href="images/favicon.ico?v=2" rel="shortcut icon" type="image/vnd.microsoft.icon" >
</head>
<body topmargin="0" leftmargin="0">
    <div class="container">
      	<div class="theForm">
		<div img src="logo.png" ><div >
		<h4 style="text-align: center;">INSCRIPTION A UNE FORMATION</h4>
		
		
<form action="formation_seeker.php" method="POST">
			<div class="aTable">
				<div class="aRow">
					<div class="aCell label">Nom</div>
					<!-- Note the use of key] in the "name" field -->
					<div class="aCell formTd" autofocus><input type="text" name="nom" size=60 maxlength=255 required /> <? if(isset($erreurnom)) echo $erreurnom; ?> </div>
				</div>
				<div class="aRow">
					<div class="aCell label">Prénom:</div> </label>					
					<div class="aCell formTd" ><input type="text" name="prenom" size=60 maxlength=255 required /> <? if(isset($erreurprenom)) echo $erreurprenom; ?> </div>
				</div></br>
				<div class="aRow">
				<div class="aCell label">Age (Au 31 décembre):</div> </label>
				<div class="aCell formTd" > <input  type="number" placeholder="9"ans."name="age" size=60  min="9" max="99" required /></div>
				</div></br>
				
				<div class="aRow">
				<div class="aCell label">Choisissez une formation</div> </label>
				<div class="aCell formTd" >
				<select id="pays" name="formation_desiree" required ><? if(isset($erreurformation_desiree)) echo $erreurformation_desiree; ?>
							<option>Management & Gestion des Projets</option input type="text" />
							<option>Statistiques dans R</option input type="text" />
							<option>Droit des Entreprises</option input type="text"/>
							<option>Droits de l'Homme</option input type="text" />
							<option>Planification des Villes Africaines</option input type="text" />
							<option>Conception de Site Web (CMS + PHP)</option input type="text"/>
							<option>Conception de Site Web (CMS)</option input type="text"/>
							<option>Cartographie et SIG</option input type="text" />
							<option>Autocad (Topographie)</option input type="text" />
							<option>Autocad (Modelisation 3D)</option input type="text"/>
							<option>Management des OIT (Organisations Internationales)</option input type="text" />
							<option>Programmation en Python</option input type="text" />
							<option>Programmation Applications Android</option input type="text"/>
							<option>Conception de Jeux Vidéo 3D</option input type="text"/>
				</select>
						 </div>
				</div></br></br>
				
				 
					<!-- Note the use of key] in the "name" field -->
			<div class="aRow">	
				<div class="aCell label"> Base (Attestation délivrée par AQINS)</div> </label>
				<div class="aCell formTd" > <input type="radio" id="non"name="dp" size=60 maxlength=255 /></div>
					
				 <div class="aCell label">&nbsp; Privilège (Certification Etrangère)</div></label>
				 <div class="aCell formTd" ><input type="radio" id="oui" name="dp" size=60 maxlength=255/></br><? if(isset($erreurdp)) echo $erreurdp; ?></div>
			</div>	</br></br></br>
				
				<div class="aRow">
				<div class="aCell label">Adresse Electronique:</div> </label>
				<div class="aCell formTd" > <input type="email" name="email" size=60  /><? if(isset($erreuremail)) echo $erreuremail; ?></div></br>
				</div></br></br></br>

			<div class="aRow">
			<div class="aCell label">N° Téléphone principal:</div>
					<!-- Note the use of key] in the "name" field -->
			<div class="aCell formTd"><input type="text" name="num_tel1" size=20 maxlength=20 /><? if(isset($erreurnum_tel1)) echo $erreurnum_tel1; ?></div>
			<div class="aCell label">&nbsp;Où </div>					
			<div class="aCell label">N° Téléphone secondaire:</div>
					<!-- Note the use of key] in the "name" field -->
			<div class="aCell formTd"><input type="text" name="num_tel1" size=20 maxlength=20 /></div>
				</div></br>

				</br>
				
				<div class="aRow">
				<div class="aCell label">Sélectionnz votre Niveau d'étude:</div> </label>
				<div class="aCell formTd" >
				<select name="niv_etudes" id="">
							<option>Aucun</option input type="text" id="Aucun"/>
							<option>CEP</option input type="text"  id="CEP"/>
							<option>BEPC</option input type="text" id="BEPC"/>
							<option>BAC</option input type="text"  id="BAC"/>
							<option>BAC+2</option input type="text"  id="BAC+2"/>
							<option>BAC+3/ License</option input type="text" id="BAC+3"/>
							<option>Maitrise/Master1</option input type="text"  id="Master1"/>
							<option>Master2</option input type="text"  id="Master2"/>
							<option>Doctorat et plus</option input type="text" id="Doctorat"/>
							<option></option>
							
				</select><? if(isset($erreurniv_etudes)) echo $erreurniv_etudes; ?>
						 </div>
				</div></br></br>
				
				<div class="aRow">
				<div class="aCell label">Heure de Début souhaité</div>
					<!-- Note the use of key] in the "name" field -->
			<div class="aCell formTd"><input type="text" name="heure_debut" size=20 maxlength=20 /></div>
			<div class="aCell label">&nbsp; A</div>					
			<div class="aCell label">Heure de Fin souhaité</div>
			<div class="aCell formTd"><input type="text" name="heure_fin" size=20 maxlength=20 /></div>
				</div></br>

			
			
				<div class="aRow">
					<div class="aCell label">&nbsp;</div>
					<div class="aCell formTd"><input type="submit" name="submit" value="M'inscrire" /></div>
				</div>
			</div>
		</form >
		 </div>
		<div style="clear: both;"></div>
      <div class="footer">
      	<hr>
        <p>&copy; 2014 by AQINS.Corp| All rights reserved</p>
      </div>
    </div> <!-- /container -->
  </body>
</html>