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

EDI, CMS, Outils, Scripts et API PHP Discussion :

vérification formulaire standard


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de jisig
    Homme Profil pro
    null
    Inscrit en
    Avril 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Indonésie

    Informations professionnelles :
    Activité : null

    Informations forums :
    Inscription : Avril 2014
    Messages : 146
    Par défaut vérification formulaire standard
    Bonjour,

    Tout d'abord je ne sais pas si c'est la rubrique adéquate, c'est un script à analyser, mais celui-ci n'est pas téléchargé, que soit, j'aimerais simplement avoir l'avis de personnes ayant plus d'expériences et/ou connaissances que moi (ce qui n'est pas dur ) afin de savoir si le code est dans un premier temps propre, et dans un second temps un tant soi peu sécurisé.

    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
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    <?php
    	trim($_POST['last_name']);
    	trim($_POST['first_name']);
    	trim($_POST['email']);
    	trim($_POST['mobile']);
    	if(!isset($_POST['last_name']) || strlen($_POST['last_name'])<1 || !preg_match('/^[a-zA-Zàâéèêïîöôüû -]+$/',$_POST['last_name']))
    	{
    		$last_name='Your last name doesn\'t seem correct ! Only letters are available and accent (a->z and àâéèêïîöôüû)';
    		$check=false;
    	}
    	else
    	{
    		$last_name=true;
    	}
    	if(!isset($_POST['first_name']) || strlen($_POST['first_name'])<1 || !preg_match('/^[a-zA-Zàâéèêïîöôüû -]+$/',$_POST['first_name']))
    	{
    		$first_name='Your first name doesn\'t seem correct ! Only letters are available and accent (a->z and àâéèêïîöôüû)';
    		$check=false;
    	}
    	else
    	{
    		$first_name=true;
    	}
    	date_default_timezone_set('America/Los_Angeles');
    	if(isset($_POST['year']) && $_POST['year']<=date('Y')-10 && isset($_POST['month']) && isset($_POST['day']) && is_numeric($_POST['year']) && is_numeric($_POST['month']) && is_numeric($_POST['day']))
    	{
    		if(($_POST['year']==4 || $_POST['year']==6 || $_POST['year']==9 || $_POST['year']==11) && $_POST['day']>30)
    		{
    			$date_of_birth='Your date of birth dosn\'t seem correct !';
    		$check=false;
    		}
    		elseif($_POST['year']==2 && $_POST['year']%4==0 && $_POST['year']%100!=0 || $_POST['year']%400==0)
    		{
    			if($_POST['day']>29)
    			{
    				$date_of_birth='Your date of birth dosn\'t seem correct !';
    		$check=false;
    			}
    		}
    		elseif($_POST['year']==2 && $_POST['year']>28)
    		{
    			$date_of_birth='Your date of birth dosn\'t seem correct !';
    		$check=false;
    		}
    		else
    		{
    			$date_of_birth=true;
    		}
    	}
    	else
    	{
    		$date_of_birth='Your date of birth dosn\'t seem correct !';
    	}
    	if(!isset($_POST['sex']) || ($_POST['sex']!='male' && $_POST['sex']!='female'))
    	{
    		$sex='Your gender dosn\'t seem correct, can be only male or female !';
    		$check=false;
    	}
    	else
    	{
    		$sex=true;
    	}
    	if((!preg_match('`[0-9]{10}`',$_POST['mobile']) || strlen($_POST['mobile'])!=10) && isset($_POST['mobile']) && $_POST['mobile']!='')
    	{
    		$mobile='Your numberphone doesn\'t seem correct !';
    		$check=false;
    	}
    	else
    	{
    		$mobile=true;
    	}
    	try
    	{
    		$db = new PDO('mysql:host=mon_host;dbname=ma_base_de_donnee;charset=utf8', 'mon_utilisateur', 'mon_mot_de_passe');
    	}
    	catch (Exception $e)
    	{
    		die('Erreur : ' . $e->getMessage());
    	}
    	$db_count_line_table_country=$db->prepare('SELECT id FROM country');
    	$db_count_line_table_country->execute();
    	$db_max_line_table_country = $db_count_line_table_country->fetchAll();
    	$db_max_line_table_country = count($db_max_line_table_country);
    	if(!isset($_POST['country']) || (!is_numeric($_POST['country']) && ($_POST['country'] < 0 || $_POST['country']>$db_max_line_table_country)))
    	{
    		$country='Your country doesn\'t seem correct !';
    		$check=false;
    	}
    	else
    	{
    		$country=true;
    	}
    	if(!isset($_POST['email']) || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
    	{
    		$email='Your mail doesn\'t seem correct';
    		$check=false;
    	}
    	else
    	{
    		$email=true;
    	}
    	if(!isset($_POST['password']) || (!preg_match('#^[a-zA-Z0-9]$#',$_POST['password']) && (strlen($_POST['password'])>=12 || strlen($_POST['password'])<=5)))
    	{
    		$password='Your password must contain only letters and numbers (a->z A->Z 0->9) and between 6 and 12 characters !';
    		$check=false;
    	}
    	else
    	{
    		$password=true;
    	}
    	if($_POST['password_check']!=$_POST['password'])
    	{
    		$password_check='Passwords don\'t corrresond !';
    		$check=false;
    	}
    	else
    	{
    		$password_check=true;
    	}
    ?>
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title>Sijeun</title>
    		<link href='http://fonts.googleapis.com/css?family=Dancing+Script:700' rel='stylesheet' type='text/css'/>
    		<style>
    		</style>
    	</head>
    	<body>
    		<h1 style="font-family:'dancing script';width:100%;border-bottom:double 4px black;text-align:center;">Sijeun</h1>
    		<?php
    			if(isset($check) && $check==false)
    			{
    				printf("%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>",$last_name, $first_name, $date_of_birth, $sex, $mobile, $country, $email, $password, $password_check);
    			}
    			else
    			{
    				printf("registration with success !");
    			}
    		?>
    	</body>
    </html>
    Je teste toutes mes variables, aucune ne sera traitée si elle contient des caractères spéciaux, et rien ne s'exécutera avant que le test soit fini, mais seulement est-ce assez ? il y a encore plein de subtilités que je ne connais guerre.

    Je vous remercie d'avance pour vos lumières et le temps que vous pouvez consacrer à cette partie de mon projet !

    EDIT : strlen est remplacé par mb_strlen (pour l'utf-8) (vu ici -> http://www.developpez.net/forums/d15...laire-contact/)

    Jisig

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    - lignes 2-5 : trim() renvoit la valeur nettoyée, elle ne met pas à jour la variable directement ; de plus tu considères déjà que tes variables $_POST existent alors que tu fais le contrôlé plus loin
    Tu peux faire comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $trim_post = array_map('trim', $_POST);
    if(empty($trim_post['last_name']) || !preg_match('/^[a-zA-Zàâéèêïîöôüû -]+$/',$trim_post['last_name']))[/CODE]

    - Pour la date tu t'es embêté pour rien, il existe des fonctions pour vérifier la validité des dates :
    http://php.net/manual/fr/function.checkdate.php
    au passage il manque le "e" partout à "doesn't"

    - Pour les accents, tu n'es pas gentil : si je m'appelle Ølson je ne peux pas m'inscrire ?

    - Pour le numéro de téléphone tu as fait un paté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(empty($trim_post['mobile']) || !preg_match('`[0-9]{10}`',$_POST['mobile']))
    De même pour la restriction : si dans mon pays les numéros n'ont pas 10 chiffres je ne peux pas m'inscrire ?

    - Ligne 80, il n'est pas utile de préparer la requête et si tu veux le compte, fait une requête COUNT.

    - Ligne 102, tu t'es emmêlé dans la logique, c'est OU partout : le mot de passe n'est pas s'il n'existe pas OU s'il ne correspond pas au pattern OU s'il fait moins de 12 OU s'il fait plus de 5

    - Pareil ligne 84 pour les OU
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éprouvé Avatar de jisig
    Homme Profil pro
    null
    Inscrit en
    Avril 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Indonésie

    Informations professionnelles :
    Activité : null

    Informations forums :
    Inscription : Avril 2014
    Messages : 146
    Par défaut
    Hahaha rien qu'en voyant ton pseudo je savais déjà que j'allais devoir changer beaucoup de choses

    Alors tout d'abord merci de ta réponse ! !

    Je comprends toutes les remarques et j'ai donc adapté mon code ainsi pour le moment.

    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
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    <?php
    	trim($_POST['last_name']);
    	trim($_POST['first_name']);
    	trim($_POST['email']);
    	trim($_POST['mobile']);
    	if(!isset($_POST['last_name']) || mb_strlen($_POST['last_name'])<1 || !preg_match('/^[a-zA-Zàâéèêïîöôüû -]+$/',$_POST['last_name']))
    	{
    		$last_name='Your last name doesn\'t seem correct ! Only letters are available and accent (a->z and àâéèêïîöôüû)';
    		$check=false;
    	}
    	else
    	{
    		$last_name=true;
    	}
    	if(!isset($_POST['first_name']) || mb_strlen($_POST['first_name'])<1 || !preg_match('/^[a-zA-Zàâéèêïîöôüû -]+$/',$_POST['first_name']))
    	{
    		$first_name='Your first name doesn\'t seem correct ! Only letters are available and accent (a->z and àâéèêïîöôüû)';
    		$check=false;
    	}
    	else
    	{
    		$first_name=true;
    	}
    	date_default_timezone_set('America/Los_Angeles');
    	if(isset($_POST['year']) && $_POST['year']<=date('Y')-10 && isset($_POST['month']) && isset($_POST['day']))
    	{
    		if(!checkdate($_POST['month'],$_POST['day'],$_POST['year']))
    		{
    			$date_of_birth='Your date of birth dosn\'t seem correct !';
    			$check=false;
    		}
    		else
    		{
    			$date_of_birth=true;
    		}
    	}
    	else
    	{
    		$date_of_birth='Your date of birth dosn\'t seem correct !';
    	}
    	if(!isset($_POST['sex']) || ($_POST['sex']!='male' && $_POST['sex']!='female'))
    	{
    		$sex='Your gender dosn\'t seem correct, can be only male or female !';
    		$check=false;
    	}
    	else
    	{
    		$sex=true;
    	}
    	if(!empty($trim_post['mobile']) && !preg_match('`[0-9]{10}`',$_POST['mobile']) && isset($_POST['mobile']))
    	{
    		$mobile='Your numberphone doesn\'t seem correct !';
    		$check=false;
    	}
    	else
    	{
    		$mobile=true;
    	}
    	try
    	{
    		$db = new PDO('mysql:host=mon_host;dbname=ma_bdd;charset=utf8', 'mon_user', 'mon_mdp');
    	}
    	catch (Exception $e)
    	{
    		die('Erreur : ' . $e->getMessage());
    	}
    	$db_max_line_table_country = $db->query('SELECT COUNT(*) FROM country')->fetchColumn();
    	if(!isset($_POST['country']) || !is_numeric($_POST['country']) || ($_POST['country'] < 0 || $_POST['country']>$db_max_line_table_country))
    	{
    		$country='Your country doesn\'t seem correct !';
    		$check=false;
    	}
    	else
    	{
    		$country=true;
    	}
    	if(!isset($_POST['email']) || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
    	{
    		$email='Your mail doesn\'t seem correct';
    		$check=false;
    	}
    	else
    	{
    		$email=true;
    	}
    	if(!isset($_POST['password']) || (!preg_match('#^[a-zA-Z0-9]$#',$_POST['password']) || mb_strlen($_POST['password'])>=12 || mb_strlen($_POST['password'])<=5))
    	{
    		$password='Your password must contain only letters and numbers (a->z A->Z 0->9) and between 6 and 12 characters !';
    		$check=false;
    	}
    	else
    	{
    		$password=true;
    	}
    	if($_POST['password_check']!=$_POST['password'])
    	{
    		$password_check='Passwords don\'t corrresond !';
    		$check=false;
    	}
    	else
    	{
    		$password_check=true;
    	}
    ?>
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title>Sijeun</title>
    		<link href='http://fonts.googleapis.com/css?family=Dancing+Script:700' rel='stylesheet' type='text/css'/>
    		<style>
    			label
    			{
    				text-align:left;
    				float:left;
    				width:160px;
    				margin-left:20%;
    			}
    			input
    			{
    				text-align:right;
    				width:150px;
    			}
    			.radio
    			{
    				width:auto;
    			}
    			#select_calendar_year
    			{
    				width:70px;
    			}
    			#select_calendar_month, #select_calendar_day
    			{
    				width:40px;
    			}
    			#select_country
    			{
    				width:150px;
    			}
    			a
    			{
    				color:black;
    			}
    			a:visited
    			{
    				color:black;
    			}
    		</style>
    	</head>
    	<body>
    		<h1 style="font-family:'dancing script';width:100%;border-bottom:double 4px black;text-align:center;">Sijeun</h1>
    		<?php
    			if(isset($check) && $check==false)
    			{
    				printf("%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>%s<br/>",$last_name, $first_name, $date_of_birth, $sex, $mobile, $country, $email, $password, $password_check);
    		?>
    				<form id='form_registration' action='registration.php' method='post'>
    				<label for='last_name'>Last name :</label><input value='<?php printf("%s",$_POST['last_name']); ?>' name='last_name' type="text" autofocus/><br/>
    				<label for='first_name'>First name :</label><input value='<?php printf("%s",$_POST['first_name']); ?>' name='first_name' type="text"/><br/>
    				<label for='date_of_birth'>Date of birth :</label>
    						<select name='year' id='select_calendar_year'>
    							<option disabled selected>-Y-</option>
    							<?php
    								date_default_timezone_set('America/Los_Angeles');
    								for($i=date('Y')-10;$i>date('Y')-120;$i--)
    								{
    									printf("<option value='%s'>%s</option>",$i,$i);
    								}
    							?>
    						</select>
    						<select name='month' id='select_calendar_month'>
    							<option disabled selected>-M-</option>
    							<option value='1'>1</option>
    							<option value='2'>2</option>
    							<option value='3'>3</option>
    							<option value='4'>4</option>
    							<option value='5'>5</option>
    							<option value='6'>6</option>
    							<option value='7'>7</option>
    							<option value='8'>8</option>
    							<option value='9'>9</option>
    							<option value='10'>10</option>
    							<option value='11'>11</option>
    							<option value='12'>12</option>
    						</select>
    						<select name='day' id='select_calendar_day'>
    							<option disabled selected>-D-</option>
    							<option value='1'>1</option>
    							<option value='2'>2</option>
    							<option value='3'>3</option>
    							<option value='4'>4</option>
    							<option value='5'>5</option>
    							<option value='6'>6</option>
    							<option value='7'>7</option>
    							<option value='8'>8</option>
    							<option value='9'>9</option>
    							<option value='10'>10</option>
    							<option value='11'>11</option>
    							<option value='12'>12</option>
    							<option value='13'>13</option>
    							<option value='14'>14</option>
    							<option value='15'>15</option>
    							<option value='16'>16</option>
    							<option value='17'>17</option>
    							<option value='18'>18</option>
    							<option value='19'>19</option>
    							<option value='20'>20</option>
    							<option value='21'>21</option>
    							<option value='22'>22</option>
    							<option value='23'>23</option>
    							<option value='24'>24</option>
    							<option value='25'>25</option>
    							<option value='26'>26</option>
    							<option value='27'>27</option>
    							<option value='28'>28</option>
    							<option value='29'>29</option>
    							<option value='30'>30</option>
    							<option value='31'>31</option>
    						</select><br/>
    				<label for='sex'>Gender :</label><input class='radio' name='sex' value='male' type="radio"/>Male<input class='radio' name='sex' value='female' type="radio"/>Female<br/>
    				<label for='mobile'>Mobile (optional) :</label><input name='mobile' value='<?php printf("%s",$_POST['mobile']); ?>' type="tel"/><br/>
    				<label for='country'>Country :</label>
    				<select name='country' id='select_country'>
    					<option disabled selected>Select your country</option>
    				<?php
    					try
    					{
    						$db = new PDO('mysql:host=localhost;dbname=yeongyeol;charset=utf8', 'root', 'xnnxuux');
    					}
    					catch (Exception $e)
    					{
    						die('Erreur : ' . $e->getMessage());
    					}
    					$db_table_country=$db->query('SELECT id, english_name FROM country ORDER BY english_name');
    					while($fetch_table_country=$db_table_country->fetch())
    					{
    						printf("<option value='%s'>%s</option>",$fetch_table_country['id'],$fetch_table_country['english_name']);
    					}
    				?>
    				</select><br/>
    				<label for='email'>Email :</label><input value='<?php printf("%s",$_POST['email']); ?>' name='email' type="email"/><br/>
    				<label for='password'>Password :</label><input name='password' type="password"/><br/>
    				<label for='password_check'>Retype your password :</label><input name='password_check' type="password"/><br/><br/>
    				<label>Registration</label><input style='text-align:center;' class='submit' type='submit' value='Subscribe'/><br/>
    				<a href='./'>Already Member ? Connect Now !</a>
    				</form>
    		<?php
    			}
    			else
    			{
    				printf("registration with success !");
    			}
    		?>
    	</body>
    </html>
    - lignes 2-5 : trim() renvoit la valeur nettoyée, elle ne met pas à jour la variable directement ; de plus tu considères déjà que tes variables $_POST existent alors que tu fais le contrôlé plus loin
    Tu peux faire comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $trim_post = array_map('trim', $_POST);
    Juste ça que ne comprends pas,

    je comprends que je contrôle mes variables plus loin hors là non, et j'aurais du les contrôler directement, je modifierai, mais ce qui me turlupine pour le moment c'est que

    si la fonction trim retourne la valeur nettoyée, ma variable est pourtant bien égale à ce qu'elle retourne non ? dans le cas ou non, ça veut dire que je dois utiliser trim() pour mes test et mon insertion à ma bdd ?

    ps : Je ne connaissais pas array_map (vachement pratique)

    Jisig

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    quand tu fais trim($_POST['last_name']); il ne se passe rien.
    il faudrait écrire $xxxx = trim($_POST['last_name']); et $xxxx est la chaine nettoyée.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éprouvé Avatar de jisig
    Homme Profil pro
    null
    Inscrit en
    Avril 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Indonésie

    Informations professionnelles :
    Activité : null

    Informations forums :
    Inscription : Avril 2014
    Messages : 146
    Par défaut
    OMG je suis vraiment débile --' Merci pour ta lumière ! je pensais que je faisais $_POST['blabla']=trim($_POST['blablabla']); bref je vais corriger ça ! Heu sinon niveau sécurité il ne faut rien faire de plus à priori ?

    (désolé juste pour savoir après je ferai des recherches si tu me dis que c'est nécessaire)

    Merci.

    Jisig

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    puisqu'on en est aux corrections...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		$mobile='Your numberphone doesn\'t seem correct !';
    ->
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		$mobile='Your phone number seems incorrect !';
    Les anglophones ne pensent pas comme les francophones.

    Quand c'est bon, on dit "C'est pas mauvais".
    Eux disent simplement "It's good".

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. fonction de vérification formulaire inefficace
    Par Deallyra dans le forum Général JavaScript
    Réponses: 31
    Dernier message: 30/05/2007, 17h27
  2. Vérification formulaire prérempli
    Par carelha dans le forum Langage
    Réponses: 3
    Dernier message: 04/01/2007, 10h32
  3. [Question] Vérification formulaire
    Par Badaboumpanpan dans le forum Langage
    Réponses: 2
    Dernier message: 17/07/2006, 18h42
  4. problème de vérification formulaire (non bloquante)
    Par Florent08800 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/05/2006, 12h02
  5. problème de vérification formulaire
    Par Le Rebel dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 16/03/2006, 13h10

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