Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/02/2011, 17h55   #1
Invité de passage
 
Inscription : février 2011
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 13
Points : 1
Points : 1
Par défaut Validation de formulaire en javascript et envoi en PHP

Bonjour,
Je suis débutant en programmation web, et je faisais pour pratiquer un petit formulaire sur lequel j'appliquais un script javascript pour vérifier si les champs étaient remplis avec ensuite envoi du formulaire au serveur.
Helas comme vous vous en doutez ça ne marche pas...

Je recopie ci dessous le code de ma page HTML et celle de la cible en PHP en esperant que quelqu'un puisse m'aider.

Page HTML

Code :
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
 
<html>
<head>
	<title>Identification</title>
 
<script type="text/javascript">
function valider(frm){
	if((frm.elements['log'].value !="")&&(frm.elements['pwd'].value !="")){
	return true;
	}else if((frm.elements['log'].value == "")||(frm.elements['pwd'].value == "")){
	if(frm.elements['log'].value == ""){
	alert("Saisissez votre login");
	}
	if(frm.elements['pwd'].value == ""){
	alert("Saisissez votre mot de passe");
	}
	return false;
	}
	}
</script>
</head>
 
<body>
 
<h1>Knutt's Workshop</h1>
 
<form id="ident" enctype="text/plain" 
	method="post" action="identconex.php" onsubmit="return valider(this)"/>
 
	<fieldset>
	<legend>Veuillez vous identifier</legend>
		<p>
			<label for="identlog">Login : </label>
			<input type="text" id="identnom" name="log"/>
		</p>
		<p>
			<label for="identpwd">Mot de Passe : 
			<input type="password" id="identpwd" name="pwd"/>
		</p>
		<p>
			<input type="submit"value="valider"/>
		</p>
	</fieldset>
</form>
 
 
</body>
</html>
Cible identconex.php
Code :
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
 
<?php
 
	$pwd = $_POST['pwd'];
	$log = $_POST['log'];
 
	if(isset($log)&&isset($pwd)){
		if($log == 'tata' && $pwd =='toto'){
 
		echo'ouais';
 
		}else if(($log !="tata")||($pwd !="toto")){
			if($log != 'tata'){
				echo"Identifiant incorrect <br />";
				}
			if($pwd != "toto"){
				echo"Mot de passe incorrect <br />";
				}
		echo'<a href="ident.php">Retour au formulaire</a> <br />';
		}
		}else{
		echo'Veuillez saisir un identifiant et un mot de passe !';
	}
 
?>
Knutt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 00h34   #2
Membre Expert
 
Avatar de Eric2a
 
Homme Eric Garidacci
Inscription : septembre 2005
Messages : 1 057
Détails du profil
Informations personnelles :
Nom : Homme Eric Garidacci
Âge : 41

Informations forums :
Inscription : septembre 2005
Messages : 1 057
Points : 1 564
Points : 1 564
Salut,

ident.php
Code html :
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
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Identification</title>
<script type="text/javascript">//<![CDATA[
function valider(){
	var log=document.getElementById('identlog').value;
	var pwd=document.getElementById('identpwd').value;
 
	if((log=='')&&(pwd=='')){
		alert('Saisissez le login et le mot de passe');
		return false;
	}
	if(log==''){
		alert('Saisissez le login');
		return false;
	}
	if(pwd==''){
		alert('Saisissez le mot de passe');
		return false;
	}
	return true;
}
//]]>
</script>
</head>
<body>
<h1>Knutt's Workshop</h1>
<form id="ident" method="post" action="identconex.php" onsubmit="return valider();">
	<fieldset>
		<legend>Veuillez vous identifier</legend>
		<p>
			<label for="identlog">Login : </label>
			<input type="text" id="identlog" name="log"/>
		</p>
		<p>
			<label for="identpwd">Mot de Passe :
			<input type="password" id="identpwd" name="pwd" />
		</p>
		<p>
			<input type="submit" value="valider" />
		</p>
	</fieldset>
</form>
</body>
</html>

identconex.php
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$erreur='';
 
$log=(isset($_POST['log']))?trim($_POST['log']):'';
$pwd=(isset($_POST['pwd']))?trim($_POST['pwd']):'';
if($log!=''&& $pwd!=''){
	if($log!='tata')
		$erreur='Identifiant incorrect';
	elseif($pwd!='toto')
		$erreur='Mot de passe incorrect';
}else
	$erreur='Veuillez saisir un identifiant et un mot de passe !';
 
if($erreur!=''){
	echo $erreur.'<br /><a href="ident.php">Retour au formulaire</a> <br />';
	exit();
}
 
echo 'Ouais';
?>
__________________

N'oubliez pas le vote des messages utiles ainsi que le Tag [Résolu].

Mon Site Web : Corse - Actualité, Météo, Vidéos, Logiciels, ...
Eric2a est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 11h22   #3
Invité de passage
 
Inscription : février 2011
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 13
Points : 1
Points : 1
Merci beaucoup pour ton aide.
J'aurais une petite question a propos du script PHP.
Lorsque tu écris :

$log=(isset($_POST['log']))?trim($_POST['log']):'';

trim c'est bien pour supprimer les éventuels espace avant et après le login n'est ce pas ? Mais par contre je ne suis pas très famillié de la syntaxe avec le avant trim et les Pourrait tu m'expliquer ce que ça signifie car je ne trouve pas cette forme la dans les tutos qui expliquent l'utilisation de trim.
Knutt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 11h45   #4
Membre éclairé
 
Homme Gérard Okono
Développeur Web
Inscription : juillet 2006
Messages : 707
Détails du profil
Informations personnelles :
Nom : Homme Gérard Okono
Localisation : Cameroun

Informations professionnelles :
Activité : Développeur Web
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juillet 2006
Messages : 707
Points : 328
Points : 328
Citation:
Envoyé par Knutt Voir le message
Mais par contre je ne suis pas très famillié de la syntaxe avec le avant trim et les Pourrait tu m'expliquer ce que ça signifie car je ne trouve pas cette forme la dans les tutos qui expliquent l'utilisation de trim.
Google est ton ami, objet :
Click to View Search Results for opérateur ternaire opérateur ternaire
okoweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 12h32   #5
Invité de passage
 
Inscription : février 2011
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 13
Points : 1
Points : 1
Okay merci, j'avais cherché sur google mais en tapant : ?trim() et évidement j'avais rien trouvé, je savais pas que ça s'apellait "opérateur ternaire".
Bon dimanche.
Knutt est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h28.


 
 
 
 
Partenaires

Hébergement Web