Problème d'affichage

Fermé
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 - Modifié par gilbert1995 le 18/05/2010 à 00:53
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 - 24 mai 2010 à 15:02
Bonjour,
je veux savoir pourquoi mon message d,erreur ne marche pas voici mon code


 <?php 
  if (isset($_POST['mot_de_passe']) AND $_POST['mot_de_passe'] == "je met mon mot de passe la") if (isset($_POST['nom']) AND $_POST['nom'] == "admin") // Si le nom et mot de passe est bon on affiche ca 
        { 
  
  ?> 
   


  <p><br><br><br><br><br><br><br><br><br><br> 
<center><a href=index2.php><font color=#ffffff font size="5">CLICK</a></center></font> 
  </p> 
  
   
   
        <?php 
 } 
 else // Sinon, on affiche un message d'erreur 
 { 
  echo '<p>Mot de passe ou nom incorrect</p>'; 
 } 
 ?> 


2 réponses

salut,
il faut bien organiser ton code. Regarde, le premier if qu'est ce qui en ressort si les conditions sont vérifiées (pas d'accolades)
et bien je vais refaire ton code:

<?php   
  if (isset($_POST['mot_de_passe']) && $_POST['mot_de_passe'] == "je met mon mot de passe la")  
   {  
             
         if (isset($_POST['nom']) && $_POST['nom'] == "admin")    
                           
        {   

  ?>   
     <p><br><br><br><br><br><br><br><br><br><br>   
       <center><a href=index2.php><font color=#ffffff font size="5">CLICK</a>    
         </center></font>   
              </p>   


<?php   
        }   

        else // je rajoute un else pour dire que l'erreur provient du nom  
      {  
        echo  '<p>nom incorrect</p>';  

      }  
    }  //on ferme le if du mot de passe  
else  
{  
echo '<p>Mot de passe ou nom incorrect</p>';   

}  

?>  




@+
0
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 29
Modifié par gilbert1995 le 18/05/2010 à 17:20
bon je l'ai mit mais je croit que j'ai une erreure dans ma page de conexion voila le code
<head>  
  <title>Admin</title>  
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  
 </head>  
 <br><br><br><br><br><br><br><br><br>  
  <center>  
  <p><font color=#ffffff>Veuillez entrer votre nom et mot de passe :</font></p>  
  <form action="secret2.php" method="post">  
   <p>  
   <font color=#ffffff>Nom </font><input type="name" name="nom">            <font color=#ffffff>Mot de passe</font><input type="password" name="mot_de_passe" />  
                        <input type="submit" value="Connexion" />  
   </p>  
  </center>  
  </form>  
  <p><font color=#ffffff font size="5"><b><u>Non non non contact moi <a href=indexpassformulaire.php>ici</a> pour avoir ton nom et mot de passe</b></o></font></p>  
merci de m'aidet gilbert
0
Utilisateur anonyme
18 mai 2010 à 17:57
vérifie ton input <input type="name" name="nom"> jene crois pas qu'il existe un type="name"
remplace le par :
<input type="text" name="nom"  id="nom" /> 
<input type="password" name="mot_de_passe"  id="mot_de_passe"  />  


@+
0
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 29
18 mai 2010 à 20:55
ok je vais essayer
0
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 29
18 mai 2010 à 21:07
merci mille fois sa marche et comment je fait pour rajouter un nom et mot de passe dans le premier code
0
bah tu utilises OR (||)
si tu veux rajouter par exemple le nom : moderateur et le mot de passe mot de passe : password
  if (isset($_POST['mot_de_passe']) && $_POST['mot_de_passe'] == "je met mon mot de passe la" || $_POST['mot_de_passe']="password"  )     
{    
               if (isset($_POST['nom']) && $_POST['nom'] == "admin" || $_POST['nom']=="moderateur"  )        
                               
        {       


mais ici tu constateras bien que le "moderateur " peut devenir admin s'il le veut en mettant justement le nom admin d'où c'est mieux d'utiliser une base de donnée au lieu d'ajouter des noms et des mots de passe comme ceci .

par contre si tu veux continuer comme tel il y'a une autre alternative mais cela prend beaucoup de temps et rend le script plus long en utilisant else if
voici:
    
<?php       
  if (isset($_POST['mot_de_passe']) && isset($_POST['nom']))    
{    

    if($_POST['nom']='admin' && $_POST['mot_de_passe']='ton_mot_de_pass')    
    {    
?>    
     <p><br><br><br><br><br><br><br><br><br><br>       
       <center><a href=index2.php><font color=#ffffff font size="5">CLICK</a>        
         </center></font>       
              </p>       
<?php    
    }    
   else if($_POST['nom']='autre_nom' && $_POST['mot_de_passe']='autre_mot_de_pass'   ) 
{    
?>    

 <p><br><br><br><br><br><br><br><br><br><br>       
       <center><a href=index2.php><font color=#ffffff font size="5">CLICK</a>        
         </center></font>       
              </p>       
<?php    
}    

//autant de else if que tu veux de nouveau nom et mot de passe     

else   //notre erreur  
{      
echo '<p>Mot de passe ou nom incorrect</p>';    
}    

}    

else    
{    
//il a oublié de remplir un champ ou les deux    
header(' location : page_autentification.php') ;    

//il est redirigé vers la page de saisi du nom et mot de passe    
}    

?>   

et voilà @+
0
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 29
19 mai 2010 à 01:59
tu est vraiment bon !!!!! et sypa de m'aider je s'est que tu vas me trouvée con et gosant mais a tu un tuto pour la base de donné sinon se n'est pas grave..... Est-ce que c'est possible de faire un formulaire qui pourait aller rajouter le nom et mot de passe j'ai fait un formailaire mais il l'envoit a mon e-mail..... voila le code
<?php
// Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#ff0000";
// Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#00ff00";
// Ne rien modifier ci-dessous si vous n'êtes pas certain de ce que vous faites !
$list['f_6']=array("Homme","Femme");
if(isset($_POST['submit'])){
	$erreur="";
	// Nettoyage des entrées
	while(list($var,$val)=each($_POST)){
	if(!is_array($val)){
		$$var=strip_tags($val);
	}else{
		while(list($arvar,$arval)=each($val)){
				$$var[$arvar]=strip_tags($arval);
			}
		}
	}
	// Formatage des entrées
	$f_1=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_1)));
	$f_2=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_2)));
	$f_3=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_3)));
	$f_5=strip_tags(trim($f_5));
	// Verification des champs
	if(strlen($f_1)<2){
		$erreur.="<li><span class='txterror'>Le champ « Nom » est vide ou incomplet.</span>";
		$errf_1=1;
	}
	if(strlen($f_2)<2){
		$erreur.="<li><span class='txterror'>Le champ « Prénom » est vide ou incomplet.</span>";
		$errf_2=1;
	}
	if(strlen($f_3)<2){
		$erreur.="<li><span class='txterror'>Le champ « Nom d'utilisateur » est vide ou incomplet.</span>";
		$errf_3=1;
	}
	if(strlen($f_4)<2){
		$erreur.="<li><span class='txterror'>Le champ « Mot de passe » est vide ou incomplet.</span>";
		$errf_4=1;
	}
	if(strlen($f_5)<2){
		$erreur.="<li><span class='txterror'>Le champ « E-Mail » est vide ou incomplet.</span>";
		$errf_5=1;
	}else{
		if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+'.
		'@'.
		'[-!#$%&\'*+\/0-9=?A-Z^_'a-z{|}~]+\.'.
		'[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+$',
		$f_5)){
			$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
			$errf_5=1;
		}
	}
	if($erreur==""){
		// Création du message
		$titre="Message de votre site";
		$tete="From:inscription gilbert1995.tk\n";
		$corps.="Nom : ".$f_1."\n";
		$corps.="Prénom : ".$f_2."\n";
		$corps.="Nom d'utilisateur : ".$f_3."\n";
		$corps.="Mot de passe : ".$f_4."\n";
		$corps.="E-Mail : ".$f_5."\n";
		for($id=0; $id<count($list['f_6']); $id++){
			if($f_6[$id]==1){
				$corps.="Sexe : ".$list['f_6'][$id]."\n";
			}
		}
		if(mail("gilbert1995.tk@hotmail.com", $titre, stripslashes($corps), $tete)){
			$ok_mail="true";
		}else{
			$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
		}
	}
}
?>
</html>
<head>
<style type="text/css" media="screen"><!--
INPUT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
SELECT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
TEXTAREA { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
.txterror { color: black; font-size: 11px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.txtform { color: black; font-size: 12px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
--></style>
</head>
<body>
<? if($ok_mail=="true"){ ?>
	<table width='100%' border='0' cellspacing='1' cellpadding='1'>
		<tr><td><span class='txtform'>Le message ci-dessous nous a bien été transmis, et nous vous en remercions.</span></td></tr>
		<tr><td>&nbsp;</td></tr>
		<tr><td><tt><?echo nl2br(stripslashes($corps));?></tt></td></tr>
		<tr><td>&nbsp;</td></tr>
		<tr><td><span class='txtform'>Un délait de 24H peut être envisagable pour la confirmation de votre demande.<br>Nous ferons suivre un message de confirmation</span></td></tr>
	</table>
<? }else{ ?>
<form action='<? echo $PHP_SELF ?>' method='post' name='Form'>
<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<? if($erreur){ ?><tr><td colspan='2' bgcolor='red'><span class='txterror'><font color='white'><b>&nbsp;ERREUR, votre message n'a pas été transmis</b></font></span></td></tr><tr><td colspan='2'><ul><?echo$erreur?></ul></td></tr><?}?>
<tr><td colspan='2'><span class='txterror'>Les champs marqué d'un * sont obligatoires</span></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Nom* :</span></td><td><input type='text' style='width:200 <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Prénom* :</span></td><td><input type='text' style='width:200 <?if($errf_2==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_2' value='<?echo stripslashes($f_2);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Nom d'utilisateur* :</span></td><td><input type='text' style='width:200 <?if($errf_3==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_3' value='<?echo stripslashes($f_3);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Mot de passe* :</span></td><td><input type='password' style='width:200 <?if($errf_4==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_4' value='<?echo$f_4?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>E-Mail* :</span></td><td><input type='text' style='width:200 <?if($errf_5==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_5' value='<?echo stripslashes($f_5);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Sexe :</span></td><td>
<table border='0' cellspacing='0' cellpadding='0'>
<? for($id=0;$id<count($list['f_6']);$id++){
if($f_6[$id]==1){$ct="checked";}
print("<tr><td><input ".$ct." type='checkbox' name='f_6[$id]' value='1' border='0'></td><td><span class='txtform'>".$list[f_6][$id]."</span></td></tr>");
unset($ct);
}?>
</table>
</td></tr>
<tr><td align='right' width='30%'></td><td><input type='submit' name='submit' value='Envoyer' border='0'></td></tr>
</table>
</form>
<? } ?>

je ne sais pas si c'est possible si oui tout simple que ca écrive ce code
<?php    
    }    
   else if($_POST['nom']='autre_nom écrit dans le formulaire' && $_POST['mot_de_passe']='autre_mot_de_pass écrit dans le formulaire'   ) 
{    
?>    

 <p><br><br><br><br><br><br><br><br><br><br>       
       <center><a href=index2.php><font color=#ffffff font size="5">CLICK</a>        
         </center></font>       
              </p>       
<?php    
}    

//autant de else if que tu veux de nouveau nom et mot de passe     

else   //notre erreur  
{      
echo '<p>Mot de passe ou nom incorrect</p>';    
}    

}    

else    
{    
//il a oublié de remplir un champ ou les deux    
header(' location : page_autentification.php') ;    

//il est redirigé vers la page de saisi du nom et mot de passe    
}    

?>


Merci beaucopup


Gilbert
0
Utilisateur anonyme
19 mai 2010 à 13:09
non tu n'es pas con tu es comme tout programmeur. Je tiens à te dire que tout est possible en programmation mais il y a souvent des différences entre deux programmes ou script et cette différence provient de l'algorithme utilisé par les programmeurs celui qui a le bon algorithme fait ce programme en en 4 lignes de script et celui qui a le mauvais algorithme peut aller jusqu'à 100 lignes. les deux programmes menant au même résultat.
Et l'on constatera bien sûr une lenteur du programme fait avec un mauvais algorithme.
Revenons sur notre cas tu veux que le formulaire enregistre ton nom et mot de passe dans la page php.
la seule possibilité est d'écrire dans le fichier php https://openclassrooms.com/fr/courses

mais tu constateras bien que par cette méthode pour permettre d'écrire ligne par ligne on utilise une boucle WHILE ce qui rend l'exécution du script très longue et gourmand en ressources pour plusieurs noms et mots de passe à ajouter.

D'ou ici c'est encore mieux d'utiliser une base de donnée lis ce tuto https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913655-quest-ce-quune-base-de-donnees

apres avoir compris ce tuto tu etudieras cet exemple d'inscription et connexion sur un site
http://www.siteduzero.com/tutoriel-3-9933-inscription-et-connexion.html

ton script permet d'envoyer un mail grace a un formulaire on ne genere pas du code php et celui ci reste dans un fichier oui tu peux generer du php mais il te faudra ecrire dans un fichier pour que ce code y reste sinon il s'effacera lors de la fin d'execution et tu inscriras encore le nom et mot de passe lors de la reouverture de la page.
0
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 29
Modifié par gilbert1995 le 19/05/2010 à 17:26
bon c'est en core moi j'ai fait le tuto avec la base de donné et regarde le résulta sa marche pas :( veut m'aiser encore une fois plz voila mon site http://gilbert1995.olympe-network.com/connexion.php
0
eh bien faut vraiment qu'on en parle trop d'erreur sur ton site si tu veux créer un site en php il va falloir beaucoup bosser
je vais t'aider à finir ton site mais surtout avec mysql faut pas faire du copier-coller du code il faut comprendre le code et savoir comment il est organisé si tu n'as pas encore installé un serveur local pour apprendre le php télécharge wamp serveur puis tu l'installes
premièrement

erreur avec session_start() ça ne te sert à rien cette fonction
tu as mis des includes sans que les fichiers ne soient sur le serveur
tu n'as pas pu te connecter à mysql parce que tu n'as pas mis des bon identifiants et mots de passe
ce qui a generé les erreurs suivants
0
gilbert1995 Messages postés 414 Date d'inscription samedi 12 septembre 2009 Statut Membre Dernière intervention 30 mai 2013 29
19 mai 2010 à 20:35
ok je compren dmais je pense que je vais continuer avec la méthode simple plus long mais simle merci de ton aide ;)
0