baxterbax
Invité n'ayant pas de compte PHPfrance
23 sept. 2011, 13:22
je viens de reprendre le script mais à vrai dire je ne suis pas un crack en php, et ça ne marche pas, soyez indulgent des erreurs alors . berf mon probleme c'est qu'on dirait qu'il manque un champs obligatoire ( nom,prenom ou email) pour qu'il enregsitre les valeurs dans la base :
<?php
// On initialise les sessions
session_start();
$nom = (isset($_POST['nom'])) ? $_POST['nom['.$i.']'] : '';
$prenom = (isset($_POST['prenom'])) ? $_POST['prenom['.$i.']'] : '';
$email = (isset($_POST['email'])) ? $_POST['email['.$i.']'] : '';
$captcha = (isset($_POST['captcha'])) ? $_POST['captcha'] : '';
$nom_atelier=($atelier);
$ok = (isset($_GET['inscription'])) ? $_GET['inscription'] : '';
$id = $_GET["idPersonne"] ;
// on crée la requête SQL
$sql = 'SELECT haut FROM structure';
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
echo' '.$data['haut'].'';
}
if ( !empty($_POST['captcha']) ) {
$captchacrypte = md5($_SESSION['captcha']);
// On supprime la session pour éviter la récupération pour les robots
$_SESSION['captcha'] = '';
}
// On prépare la liste de caractère a inséré dans le captcha
$chaine = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
// On prépare le compteur de caractère
$nb = 0;
// On limite à 6 caractères
while( $nb < 6 ) {
// On tire un nombre au hazard
$rand = rand(0,51);
// On regarde à quelle lettre il correspond et on l'ajoute à la chaine
$chaine2 .= $chaine[$rand];
// On prépare pour la lettre suivante
$nb++;
}
// Enfin on génère la session
$_SESSION['captcha'] = $chaine2;
if ( $captchacrypte == md5($_POST['captcha']) AND !empty($_POST['captcha'])&&($_POST['nom'])&&($_POST['email'])&&($_POST['atelier']) )
{
$nom_atelier=$_POST['atelier'];
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$email=$_POST['email'];
$size=sizeof('$nom');
for($i=0;$i<$size;$i++){
mysql_query("INSERT INTO noms VALUES('' ,'" . $nom_atelier. "','" . $id_atelier[$i]. "', '" . $nom[$i] . "', '" .$prenom[$i] . "','" . $email[$i] . "')" ) or die (mysql_error());
}
}
?>
</tr>
<tr>
<td align="" valign="center">
<?
//echo '<form method="post" action="ateliers.php">';
echo' <form method="post" action="" id="idPersonne' . $id . '" enctype="multipart/form-data" onClick="traitement(this.id)">';
$reponse0 = mysql_query('SELECT COUNT(*) AS nb_activites FROM ateliers WHERE theme = '.$id.' ORDER BY atelier') or die(mysql_error());
$donnees0 = mysql_fetch_array($reponse0);
$nb_activites = $donnees0['nb_activites'];
// echo '<h3>Liste des activités</h3>';
if($nb_activites == 0)
{ echo 'Aucun événement(s) trouvé (s) pour le moment.<br /><br />'; }
else {
if($nb_activites == 1)
{echo 'Il y a '.$nb_activites.' événement(s) trouvé (s).<br /><br />';}
else
{ echo 'Il y a '.$nb_activites.' événement(s) trouvé (s).<br /><br />';}
}
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idPersonne"] ;
$reponse1= mysql_query('select* from ateliers WHERE id = '.$id.' ORDER BY atelier')or die(mysql_error());
while ($donnees1 = mysql_fetch_array($reponse1))
{
$id = $donnees1['id'];
$id_atelier = $donnees1['id'];
$id = $donnees1['id'];
$nom_atelier = $donnees1['id'];
$atelier = $donnees1['atelier'];
$places = $donnees1['places'];
$details = $donnees1['details'];
$dates = $donnees1['dates'];
?>
<style type="text/css">
.fondClaire{
background-color: #F1F5FA;
border: 1px dotted #000000;
}
</style>
</head>
<body>
<table width="700"class="fondClaire">
<tr>
<td width="132" height="144" class="fondClaire">
<td width="750" height="144" valign="top" class="fondClaire">
<p>
<?
echo ' <font color="#266577"><strong>'.$atelier.'</strong></font><br />';
echo'<br>';
echo '<font color="#000000"><font size="2"><strong>'.$dates.'</strong></font><br />';
echo'<br>';
if(empty($details)) { echo '<br>'; }
else { echo ''.nl2br($details).''; }
$reponse2 = mysql_query('SELECT COUNT(*) AS nb_de_places_occupees FROM noms WHERE id_atelier = '.$id_atelier.'');
$donnees2 = mysql_fetch_array($reponse2);
$nb_de_places_restantes = $places - ($donnees2['nb_de_places_occupees']);
echo 'Nombre de places total : '.$places.'<br />';
echo 'Nombre de places restantes : '.$nb_de_places_restantes.'';
if($nb_de_places_restantes =='0') {
echo 'Plus de places disponibles';
}
?>
</p>
<table width="250" border="0" align="right">
<tr valign="bottom">
<td height="31" align="right">
<?
if($nb_de_places_restantes >'0') {
echo ' <font color="#266577"><strong></strong></font><input type="button" value="Reservez"> ';
echo ' <font color="#266577"><strong>Reservez</strong></font><input type="hidden" name="atelier" value="'.$nom_atelier.' ">';
}?>
</td>
</tr>
</table></td>
</tr></table>
<?
$id = $_GET["idPersonne"] ;
echo'</font>';
echo '<font color="#266577"><font size="3"><strong></strong></font><br />';
echo'<hr><style="border-style: border-bottom: 3px dotted #266577; color="#266577;"></hr>';
echo '<br>';
}
?>
</tr>
<tr>
<td align="center" valign="center">
<?
// on crée la requête SQL
$sql = 'SELECT bas FROM structure';
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
echo' '.$data['bas'].'';
}
$nbre_participant=1;
$nom="nom";
?>
<br>
<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><span
class="bloc"><font size="4"><strong>Pour vous inscrire aux ateliers du
CCSTI,<br>
<br>
cochez une ou plusieurs activités de votre choix et
remplissez ce formulaire :</strong></font> </span><br>
</font> </p>
<table width="550"
border="0" align="center" cellpadding="2" cellspacing="2"
style="text-align: left; margin-left: auto; margin-right: auto; height: 150px; width: 356px;">
<tbody>
<tr>
<td width="42"></td>
<td width="38"></td>
<td width="51" style="text-align: center;"></td>
<td width="144" style="text-align: center;"></td>
<td width="144" style="text-align: center;"></td>
</tr>
<tr>
<td height="24" colspan="3" nowrap="nowrap"> </td>
<td valign="middle" style="text-align: center;"> </td>
<td valign="middle" style="text-align: center;"> </td>
</tr>
<tr>
<td height="24" colspan="3" nowrap="nowrap"> </td>
<td valign="middle" style="text-align: center;"> </td>
<td valign="middle" style="text-align: center;"> </td>
</tr>
<tr>
<?php
// si l'utilisateur soumet le formulaire on affiche la valeur de tous les champs du formulaire
if (isset($_POST['submit']) && $_POST['submit'] == "Envoyer"){
// on affiche le nombre de champs du formulaire
echo 'Nombre de champs : '.$_POST['nb_champs'].'<br />';
// on affiche la valeur des champs du formulaire
for ($i=1; $i<=$_POST['nb_champs']; $i++){
$nom = 'nom'.$i;
$value1 = $_POST[$nom];
$prenom= 'prenom'.$i;
$value2 = $_POST[$prenom];
$email= 'email'.$i;
$value3 = $_POST[$email];
echo 'nom'.$i.' : '.$value1.''; echo 'prenom'.$i.' : '.$value2.'' ; echo 'email'.$i.' : '.$value3.'<br />';
}
}
// sinon on affiche le formulaire avec la possibilité d'ajout des champs au formulaire
else{
// on défini le nombre initial de champs
if (!isset($_POST['nb_champs'])){
$_POST['nb_champs'] = 1;
}
// si la personne clic sur "un champs en +", on ajoute un champs
if (isset($_POST['submit']) && $_POST['ajouter_champs'] == "Un champs en +"){
$_POST['nb_champs']++;
}
// on affiche le formulaire
echo '<FORM METHOD="post">';
// on place un champ caché contenant un entier ayant comme valeur le nombre de champs du formulaire
echo '<INPUT TYPE="hidden" NAME="nb_champs" VALUE="'.$_POST['nb_champs'].'">';
// on affiche tous les champs du formulaire
for ($i=1; $i<=$_POST['nb_champs']; $i++){
echo '<input name="nom' , $i , '" type="text" id="nom' , $i , '" value1="' , isset($_POST['nom'.$i]) ? $_POST['nom'.$i] : '' , '">
<input name="prenom' , $i , '" type="text" id="prenom' , $i , '" value2="' , isset($_POST['prenom'.$i]) ? $_POST['prenom'.$i] : '' , '">
<input name="email' , $i , '" type="text" id="email' , $i , '" value3="' , isset($_POST['email'.$i]) ? $_POST['email'.$i] : '' , '"><br/>';
}
// on place un bouton permettant de rajouter un champs
echo '<INPUT TYPE="submit" NAME="ajouter_champs" VALUE="Un champs en +"><br />';
// on place un bouton permettant de soumettre le formulaire
echo '<INPUT TYPE="submit" NAME="submit" VALUE="Envoyer">';
echo '</FORM>';
}
echo '<FORM METHOD="post" action="">';
?>
<tr>
<td>
<td style="text-align: center;"> </td>
</tr>
<tr>
<td colspan="3"> </td>
<td style="text-align: center;"> </td>
<td style="text-align: center;"> </td>
</tr>
<tr>
<td height="55" colspan="5" align="center" valign="bottom"><input type="Button" value="Participant(s)" onClick="Ajouter()" /></td>
</tr>
<tr>
<td colspan="5" align="center" style="vertical-align: top;"><p><br>
<Div ID=saisies>
</Div></td>
</tr>
<tr valign="middle">
<td colspan="5" style="vertical-align: center;" height="42">
<div align="center"><br>
<img src="captcha.php"> <font
face="Verdana, Arial, Helvetica, sans-serif" size="3">Recopiez ce code
: </font> <input name="captcha" size="6" maxlength="6" type="text"> <br>
</div>
<p> </p>
</td>
</tr>
<tr>
<td colspan="5" rowspan="1" style="vertical-align: top;">
<div style="text-align: center;"><input type="submit" name="valider_form" value="Valider" />
<br>
</div>
</td>
</tr>
<tr>
<td colspan="5" rowspan="1" style="vertical-align: center;"><br>
</td>
</tr>
</tbody>
</table>
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title></title>
<body>
<p> </p>
<p><span style="color: red;">*</span> : saisie obligatoire<br>
Les autres informations sont facultatives. Nous nous engageons à
préserver la confidentialité de ces informations.
</p>
</body>
</html></form>
<?
echo'<br>';
echo'<br>';
echo'<br>';
if($ok=='ok') {
echo '<font color="#FF0000"><font size="5">Votre inscription a bien été prise en compte ! Merci.</font>';
}
else { if($ok!='ok') echo '<font color="#FF0000"><font size="4">Vous devez indiquer vos coordonnées dans les champs à remplir.</font color"></font>';}
if ( !empty($_POST['captcha']) ) {
echo "\t\t\t<B style=\"color : #ff0000;\">Le code saisi est incorrect</b><br />\n";}
?>