Page 1 sur 2

faire une obligation dans un formulaire ou autre

Posté : 24 juin 2009, 13:26
par waldner77
bonjour a tous.
je suis entrain de faire un formulaire en php et je veux qu'on soit obliger a m'être un nom, prénom, mot de passe, email etc... , je ne voix pas du tout comment faire est ce que vous pouvez m'aider?
merci et bonne journée a vous

Posté : 24 juin 2009, 13:38
par charabia
Tu le fais avec les conditions IF ELSE.

Lors de l'envoi du formulaire : Si champ non rempli alors erreur -> retour vers le formulaire.

Posté : 24 juin 2009, 13:43
par waldner77
normalement pour le retour sur la page on fait un header?

Posté : 24 juin 2009, 14:19
par charabia
C'est en effet une des solutions.

Posté : 24 juin 2009, 14:32
par waldner77
j'ai fait sa mais le soucie c'est qu'il me fait une erreur:
Parse error: syntax error, unexpected ':' in C:\xampp\htdocs\shiva\diffplans\destination\test2.php on line 55
if(isset($_POST['valeur']) && !empty($_POST['valeur']))
	{
		$Col1_Array = $_POST['valeur'];			
		foreach($Col1_Array as $select )
			{
			copy( "A_DIFFUSER\\".$select , "A_VERIFIER\\".$select);
			
			unlink("A_DIFFUSER\\".$select );
			//copier fichier .pdf des valeurs sélectionnées
			//echo '<br>';
			//echo $select;
			$Nom_pdf = $select ; //nom pdf:
				if(isset($_POST['Uti']) && !empty($_POST['Uti']))
					{	
						$Col1_Array = $_POST['Uti'];		
						foreach($Col1_Array as $select1)
							{				
								$pieces = explode("#", $select1);
								//echo $pieces[0]; //affiche le nom
								//echo "<br>"; //sert a sauter à la ligne
								//echo $pieces[1]; affiche le prenom
								//echo "<br>"; 
								//echo $pieces[2]; affiche l'email
								$NP= "$pieces[0] $pieces[1]" ;
							if($select=''){
								header(Location: test.php);
							}
							else{
								$pseudo=$_COOKIE['monpseudo'];								
								$request="select nom_pdf from a_verifier where nom_pdf='$Nom_pdf' limit 1"; 
								$query=mysql_query($request) or die(mysql_error()); 
									if( mysql_num_rows($query)==0 ){
										$request="select nom,prenom,email from membre where pseudo='$pseudo' limit 1";
										$query=mysql_query($request) or die(mysql_error());
											if(mysql_num_rows($query)!=0){
											list($nom,$prenom,$email)=mysql_fetch_array($query);
											$NP1="$nom $prenom";
											$date=date('Y/m/d H:m:s');
											$request="insert into a_verifier ";
											$request.="values ('$Nom_pdf','$NP','$NP1','$email','$pieces[2]','$date')";
											mysql_query( $request ) or die(__file__.' '.__line__.' '.mysql_error());
											echo "Document enregistré".' '.$select;
											echo '<br>';
												}else{
													echo 'Identité irrécupérable';
													echo '<br>';
														return;
													}	}else{
																echo "Document déjà présent dans la table.";
																echo '<br>';
															}
								}
							}
							
					}	
				
			} 				
	}	

Posté : 24 juin 2009, 14:40
par charabia

Posté : 24 juin 2009, 14:46
par waldner77
j'ai plus l'erreur mais il va pas a la page que je lui est indiquer

Posté : 24 juin 2009, 14:52
par charabia
if($select=''){
Dans un IF il faut utiliser ==

Posté : 24 juin 2009, 14:53
par waldner77
oui j'avais vue quand j'ai regarder
et sa me fait toujours la même chose
if($NP == ' ' ){
								header("Location: test.php");
								
							}

Posté : 24 juin 2009, 15:01
par charabia
Une fois tu mets $NP, une fois tu mets $select...j'avoue que je comprend rien du tout.

Posté : 24 juin 2009, 15:08
par waldner77
parce que $select contient les noms de pdf
et le $NP contient le nom et prénom
juste avant je vais un multiselect pour les différent nom de pdf
et après j'utilise un menu déroulant avec a l'intérieur le nom, le prénom et l'email des personnes qui sont sur ma table sql.
et je veux faire un test si il y a une sélection ou pas , et si il y a pas de sélection alors je revient sur la page et d'indiquer se qu'il ne va pas.

Posté : 24 juin 2009, 15:29
par charabia
Avant d'utiliser la redirection, fait juste un echo pour voir si ça rentre bien dans la bonne condition.

Un conseil, ton code est illisible. Indente tout correctement, non seulement tu verras beaucoup mieux tes erreurs, mais le code sera beaucoup plus compréhensible.

Posté : 24 juin 2009, 15:42
par waldner77
j'ai essayer un echo quand j'ai sélectionner quelque sa marche
mais quand je fait une sélection il y a rien la sur ça ces normal
logique il doit le prendre en compte c'est pour sa que je ne vois pas le problème

Posté : 24 juin 2009, 16:31
par charabia
montre nous le code de ton formulaire

Posté : 25 juin 2009, 08:10
par Invité
voila mon formulaire
	
<html>
<head>
<title>Creation de la table</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body bgcolor="#E6E6FA">


<div align="center" >
<form method="post" action="test2.php" >

<?php
// Notez que !== n'existait pas avant 4.0.0-RC2
echo "<CENTER><H4> Aujourd'hui le " . date('d/m/Y à H:m:s ')."</H4>";
if ($handle = opendir('A_DIFFUSER')) {

echo '<select name="valeur[]" id="element1" size=30 multiple>';
/* Ceci est la façon correcte de traverser un dossier. */
while (false !== ($file = readdir($handle))) {
if($file != ".." && $file != ".")
{
echo "<option> $file\n </option>"; //multiselect
}
}
echo '</SELECT></CENTER>';

closedir($handle);
}

?>

<?php


// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT nom,prenom,email FROM membre order by nom';

$result = mysql_query($select,$db_link) or die ('Erreur : '.mysql_error() );

?>

<div class="normal" >selectiontion de la personne</div> 
 
<?php
 echo '<SELECT name="Uti[]" id="element2" onChange="FocusObjet()">'; 


while ($Utilisateur = mysql_fetch_array($result)) {
if( $Utilisateur[2] == "[email protected]" )
	{
	echo "<option VALUE='' ></option>";
	
	}
	
	else {
	echo "<OPTION VALUE='$Utilisateur[nom] # $Utilisateur[prenom] # $Utilisateur[email]'> $Utilisateur[0] $Utilisateur[1] / $Utilisateur[2]</OPTION>\n";
		 }
}
echo "</SELECT>";
<p>
<label for="comments">Vos commentaires dans l'email:</label><br />
<textarea name="rajout"  cols="50" rows="5" onclick="this.value''">
</textarea>
<p>
	<a href="<?php echo $url; ?>">Se d&eacute;loguer</a>
	<a href="destination1.php">retour sur la page d'accueil</a>
<input type="submit" value="Valider">
<input type="reset" value="Annuler" />
</form>
</div>
</body>
</html>