formulaire d'inscription

Eléphant du PHP | 131 Messages

14 juil. 2005, 13:04

Salut à tous,

Pouvez-vous m'aider à corriger ce script :
[code][code]<html>
<head>
	
</head>	  
<body>
<FORM action="sectionmembre_ajout.php" method="post"  onsubmit="return noEntry"onreset="Annuler">
<TABLE border="0" align="left" width="60%"><font face='Verdana,Arial,sans-serif'color='#023161'>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Date de Naissance</font></TD>
<TD>
<SELECT name="Jour" size="1">
<OPTION value="01">01</OPTION>
<OPTION value="02">02</OPTION>
<OPTION value="03">03</OPTION>
<OPTION value="04">04</OPTION>
</SELECT>&nbsp;&nbsp;&nbsp;<SELECT name="mois" size="1">
<OPTION value="01">01</OPTION>
<OPTION value="02">02</OPTION>
<OPTION value="03">03</OPTION>
<OPTION value="04">04</OPTION>
</SELECT>&nbsp;&nbsp;&nbsp;<SELECT name="annee" size="1">
<OPTION value="1985">1985</OPTION>
<OPTION value="1984">1984</OPTION>
<OPTION value="1983">1983</OPTION>
<OPTION value="1982">1982</OPTION>
<OPTION value="1981">1981</OPTION>
<OPTION value="1980">1980</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Sexe</font></TD>
<TD>
<SELECT name="" size="1">
<OPTION value="Homme">Homme</OPTION>
<OPTION value="Femme">Femme</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>E-Mail</font></TD>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>
<INPUT type="text" name="E-mail" ></font></TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Votre préférence sexuelle</font></TD>
</font></TD>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>
Hétéro<INPUT type="checkbox" name="Hétéro"    value="Hétéro">
Gay<INPUT type="checkbox" name="Gay" value="Gay"><br>
Lesbienne<INPUT type="checkbox" name="Lesbienne" value="Lesbienne"><br>
Bisexuel<INPUT type="checkbox" name="Bisexuel" value="Bisexuel">
</font></TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Pays</font></TD>
<TD>
<SELECT name="Pays" size="1" sytle="width: 220px">
<OPTION value="BE">Belgique</OPTION>
<OPTION value="FR">France</OPTION>
<OPTION value="SZ">Suisse</OPTION>
<OPTION value=""></OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Poids</font></td>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>
<SELECT name="poids" size="1" sytle="width: 220px">
<OPTION value="45kg">45kg</OPTION>
<OPTION value="50kg">50kg</OPTION>
<OPTION value="55kg">55kg</OPTION>
</SELECT>
</font>
</TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Yeux</font></td>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>
<SELECT name="yeux">
<OPTION value="Bleus">Bleus</OPTION>
<OPTION value="Noirs">Noirs</OPTION>
<OPTION value="Marrons">Marrons</OPTION>
<OPTION value="Verts">Verts</OPTION>
</SELECT></font>
</TD>
</TR>
<TR>
<TD><font face='Verdaa,Arial,sans-serif'color='#023161'> Nombre d'enfants</font></TD>
<TD><font face='Verdaa,Arial,sans-serif'color='#023161'>
<SELECT name="Nombre d'enfants">
<OPTION value="0">0</OPTION>
<OPTION value="1">1</OPTION>
<OPTION value="2">2</OPTION>
<OPTION value="3">3</OPTION>
</SELECT>
</font></TD>
</TR> 
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Fumeur</td></font>
<TD><font face='Verdaa,Arial,sans-serif'color='#023161'>
<SELECT name="fumeur">
<OPTION value="Oui">Oui</OPTION>
<OPTION value="Non">Non</OPTION>
<OPTION value="Occasionnel">Occasionnel</OPTION>
</SELECT></font>
</TD>
</TR>
<TR>
<TD> <font face='Verdana,Arial,sans-serif'color='#023161'>Loisirs</font></TD>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>
Football<INPUT type="checkbox" name="Football" Value="">
Basketball<INPUT type="checkbox" name="Basketball" value="">
Natation<INPUT type="checkbox" name="Natation" value="">
Autres<INPUT type="checkbox" name="Autres" value="">
</font>
</TD>
</TR>
<TR>
<TD>
<font face='Verdana,Arial,sans-serif' size='3' color='#023161'><b>Votre Photo</b></font>
<font face='Verdana,Arial,sans-serif'color='#023161'>ATTENTION : Format en JPG,Taille à respecter : 70 x 70 pixels.</font>
<br>
<br>
<input type='hidden' name='MAX_FILE_SIZE' value='10000'>
<input name='userfile' type='file'>
</TD>
</TR>
<TR>
<TD><b><font face='Verdana,Arial,sans-serif' size='3' color='#023161'>Votre annonce </b></font></TD>
<TR>
<TD colspan="3">
<TEXTAREA name="Votre profil"></TEXTAREA>
</TD>
</TR>
<TR>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'><b>Je choisis la formule</b></font></TD>
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>
45 Euros pour 1an&nbsp;&nbsp;&nbsp; <INPUT type="radio" name="Je choisis la formule" value=""><br>
20 Euros pour 3mois <INPUT type="radio" name="Je choisis la formule" value="">
</font></TD>
</TR>	
<TR>
<TD colspan=3><font face='Verdana,Arial,sans-serif'color='#023161'>
<INPUT type="checkbox" name="" Value="Reconnais avoir lu entièrement et accepte les conditions générales">Je reconnais avoir lu entièrement et j'accepte les conditions générales.</font></TD>
</TR>
<TR>
<TD colspan=2>
<br>
<input onblur="merci()"  type="submit"  value="Envoyer" onClick="unClic()">
&nbsp;
<INPUT type="reset"  value="Annuler" onClick="verifForm(this.form)">
</TD>
</TR>
</Table>
</FORM>	 
</body>
</html>[/code][/code]
Merci d'avance.
Modifié en dernier par 001cod10 le 14 juil. 2005, 22:44, modifié 5 fois.

Mammouth du PHP | 19672 Messages

14 juil. 2005, 13:45

001cod10 Voudrais tu faire un petit tour sur la page des règlements et lire en particulier l'article 3 puis revenir ici et éditer ton post pour procéder aux ajustements nécessaires (bouton [Éditer] en haut à droite de ton post.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 543 Messages

14 juil. 2005, 16:40

Ca donne moyen envie de lire :?

Eléphant du PHP | 138 Messages

14 juil. 2005, 22:03

Si c'est vraiment tout ton code
Et que l'erreur survient lorsque tu soumets ton formulaire.

L'erreur vient du fait que sur tes boutons "envoyer" et "annuler" tu appelles des fonctions javascript qui n'apparaissent nul part dans ta page du coup tu as des erreurs

Quelque part sur ta page tu dois avoir

Code : Tout sélectionner

<script language="JavaScript" type="text/javascript"> <!-- function unClic(){ //code de ce qu'il faut faire } function verifForm(formulaire){ //code de ce qu'il faut faire } // --> </script>
Voilà, j'espère que ces quelques sont la réponse que tu attendais :lol:
Il y a des gens qui ont une bibliothèque comme des eunuques ont un harem (V. Hugo)

Eléphant du PHP | 131 Messages

14 juil. 2005, 22:07

je vais intégrer cette partie dans mon formulaire A+. Concernant la date de naissance est ce que c'est comme cela qu'il faut l'écrire.

Mammouth du PHP | 19672 Messages

14 juil. 2005, 22:12

Concernant la date de naissance est ce que c'est comme cela qu'il faut l'écrire.
Oui, c'est le plus simple.

Fais attention dans ton code, tu as fermé des balises <font> après avoir fermé les balises <td> et il te manque une balise de fermeture </tr> quelque part.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 131 Messages

14 juil. 2005, 22:15

merci je vais vérifier cela A+.

ViPHP
pjl
ViPHP | 2119 Messages

14 juil. 2005, 22:21

001cod10 Voudrais tu faire un petit tour sur la page des règlements et lire en particulier l'article 3 puis revenir ici et éditer ton post pour procéder aux ajustements nécessaires (bouton [Éditer] en haut à droite de ton post.
Il me semble en plus que ce n'est pas la 1ere fois que Cyrano te fait cette remarque.

Image

Invité
Invité n'ayant pas de compte PHPfrance

15 juil. 2005, 18:24

STVP une aide pour cette portion de script, J'aimerai l'envoyer dans ma table sous cette forme année-mois-jour
<TR> 
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Date de Naissance</font></TD> 
<TD> 
<SELECT name=Jour size=1> 
<OPTION value=01>01</OPTION> 
<OPTION value=02>02</OPTION> 
<OPTION value="03">03</OPTION> 
<OPTION value=04>04</OPTION> 
</SELECT>&nbsp;&nbsp;&nbsp;<SELECT name="mois; size=1> 
<OPTION value=01>01</OPTION> 
<OPTION value=02>02</OPTION> 
<OPTION value=03>03</OPTION> 
<OPTION value=04>04</OPTION> 
</SELECT>&nbsp;&nbsp;&nbsp;<SELECT name=annee; size=1> 
<OPTION value=1985>1985</OPTION> 
<OPTION value=1984>1984</OPTION> 
<OPTION value=1983>1983</OPTION> 
<OPTION value=1982>1982</OPTION> 
<OPTION value=1981>1981</OPTION> 
<OPTION value=1980>1980</OPTION> 
</SELECT> 
</TD> 
</TR> 

Mammouth du PHP | 983 Messages

15 juil. 2005, 18:32

De un, il faut que tes balises select soient dans une balise form, ou tu spécifies la méthode d'envoi du formulaire (POST ou GET), puis une action (le script php qui va traiter les données saisies), et à partir de là tu peux insérer tes infos dans ta base de données.

Pour concaténer les champs: (en supposant que tu choisisses la méthode POST pour ton formulaire)
$sep='-';
$date_mysql = $_POST['annee'].$sep.$_POST['mois'].$sep.$_POST['Jour']
De plus le nom de select pour les mois est bizarre. Remplace par "mois" tout court ;)

Mammouth du PHP | 19672 Messages

15 juil. 2005, 18:32

Pourquoi tu ne concatènes pas les valeurs pour en faire une seule donnée dans ta base au format DATE ? ce serait quand même beaucoup plus facile ensuite à manipuler.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2005, 11:31

Salut,

J'ai essayé de suivre vos conseils. Je pense que je ne comprends pas bien le pricipe de la concaténation. je vous prie de bien vouloir m'aider voici le script de validation :
<?php 
$BD_serveur     = "nomserveur";
$BD_utilisateur = "root";
$BD_motDePasse  = "";
$BD_base        = "base";


if(isset($_POST["pseudo"]) 
&& isset($_POST["motdepasse"]) 
&& isset($_POST["nom"]
&& isset($_POST["prenom"])
&& isset($_POST["jour"].'-'.$_POST["mois"].'-'.$_POST["annee"]) 
&& isset($_POST["datenaissance"]) 
&& isset($_POST["sexe"]) 

    $num    = '';
    $pseudo    = $_POST["pseudo"];
    $motdepasse  = $_POST["motdepasse"];
    $nom       = $_POST["nom"];
    $prenom    = $_POST["prenom"]; 
    $sep='-'; 
    $datenaissance = $_POST["jour"].$sep.$_POST["mois"].$sep.$_POST["annee"];
$sexe = $_POST["sexe"];

echo "Bonjour ".stripSlashes($prenom)." ".stripSlashes($nom).",<br/>";
    
    @mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
        or die("Impossible de se connecter au serveur de bases de données.");
    @mysql_select_db($BD_base)
        or die("Impossible de se connecter à la base de données.");
    
    $requete = "INSERT INTO Table (num,pseudo , motdepasse , nom , prenom ,datenaissance, sexe) 
VALUES ( '$pseudo', '$motdepasse', '$nom ', '$prenom', '$datenaissance', '$sexe')";

    $result = @mysql_query($requete);
    if (!$result) {
        echo "L'enregistrement de vos données a échoué. Essayez plus tard.".
             "Et demandez à l'administrateur de vérifier l'existence de la ".
             "table table_utilisateurs ;-)<br />";
    } else {
        echo "Félicitations. Vous êtes desormais un nouveau membre de PHP Facile!".
             "<br />";
    }
   
?>

Mammouth du PHP | 19672 Messages

16 juil. 2005, 11:53

Mouais, c'Est laborieux. Tu ne sembles pas bien accrocher avec la logique élémentaire. Regarde ce qui suit :
<?php
/* Paramètres de connexion */
$BD_serveur     = "nomserveur";
$BD_utilisateur = "root";
$BD_motDePasse  = "";
$BD_base        = "base";

/* Récupération des valeurs du formulaire */
$pseudo      = isset($_POST["pseudo"]) ? $_POST["pseudo"] : "";
$motdepasse  = isset($_POST["motdepasse"]) ? $_POST["motdepasse"] : "";
$nom         = isset($_POST["nom"]) ? $_POST["nom"] : "";
$prenom      = isset($_POST["prenom"]) ? $_POST["prenom"] : "";
$jour        = isset($_POST["jour"]) ? $_POST["jour"] : "";
$mois        = isset($_POST["mois"]) ? $_POST["mois"] : "";
$annee       = isset($_POST["annee"]) ? $_POST["annee"] : "";
if($jour != "" && $mois != "" && $annee != "")
{
    $sep='-';
    $datenaissance = $jour.$sep.$mois.$sep.$annee;
}
$sexe = isset($_POST["sexe"])  ?  $_POST["sexe"] : "";

/* On vérifie que toutes les valeurs sont complétées */
if($pseudo != "" && $motdepasse != "" && $nom != "" && $prenom != "" && isset($datenaissance) && $sexe != "")
{

    echo "Bonjour ".stripSlashes($prenom)." ".stripSlashes($nom).",<br/>";

    mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse) or die("Impossible de se connecter au serveur de bases de données.");
    mysql_select_db($BD_base) or die("Impossible de se connecter à la base de données.");

    $requete = "INSERT INTO Table (pseudo , motdepasse , nom , prenom ,datenaissance, sexe)
VALUES ( '". $pseudo ."', '". $motdepasse ."', '". $nom ."', '". $prenom ."', '". $datenaissance ."', '". $sexe ."')";

    $result = mysql_query($requete);
    if (!$result)
    {
 ?>
<p>L'enregistrement de vos données a échoué. Essayez plus tard et demandez à l'administrateur de vérifier l'existence de la table table_utilisateurs ;)</p>
<?php
    }
    else
    {
 ?>
<p>Félicitations. Vous êtes desormais un nouveau membre de PHP Facile!</p>
<?php
    }
}
else
{
    /* Le formulaire n'a pas été correctement complété, rien n'est enregistré, on peut ré-afficher le 
       formulaire ici ou rediriger vers le formulaire sans rien afficher du tout */
 ?>
<p>Formulaire incomplet...</p>
<?php
}
?>
Suis correctement les commentaires que j'ai ajouté et regarde les modifications. Si certaines formulation te semblent étranges, pose la question.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
pjl
ViPHP | 2119 Messages

16 juil. 2005, 11:54

Avant de bosser le PHP, tu devrais faire attention au HML quie visiblement tu ne maitrises pas.

C'est quoi cette ligne ?
<SELECT name="mois; size=1> 

Invité
Invité n'ayant pas de compte PHPfrance

17 juil. 2005, 10:16

STVP une aide pour cette portion de script, J'aimerai l'envoyer dans ma table sous cette forme année-mois-jour
<TR> 
<TD><font face='Verdana,Arial,sans-serif'color='#023161'>Date de Naissance</font></TD> 
<TD> 
<SELECT name=Jour size=1> 
<OPTION value=01>01</OPTION> 
<OPTION value=02>02</OPTION> 
<OPTION value=03>03</OPTION> 
<OPTION value=04>04</OPTION> 
</SELECT>&nbsp;&nbsp;&nbsp;<SELECT name="mois; size=1> 
<OPTION value=01>01</OPTION> 
<OPTION value=02>02</OPTION> 
<OPTION value=03>03</OPTION> 
<OPTION value=04>04</OPTION> 
</SELECT>&nbsp;&nbsp;&nbsp;<SELECT name=annee; size=1> 
<OPTION value=1985>1985</OPTION> 
<OPTION value=1984>1984</OPTION> 
<OPTION value=1983>1983</OPTION> 
<OPTION value=1982>1982</OPTION> 
<OPTION value=1981>1981</OPTION> 
<OPTION value=1980>1980</OPTION> 
</SELECT> 
</TD> 
</TR>