Un probleme en php

Résolu
Utilisateur anonyme - 10 janv. 2009 à 18:37
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 - 10 janv. 2009 à 21:19
Bonjour,j'ai un petit probleme en php je voudrai envoyerz un email suite à une verification mais ça ne marche pas voici le code

mdp.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

</head>

<body>
<?
$Cara = "abBDEFcdefghijkm!nPQRSTUVWXYpqrst0123456789"; // Caractére possible
$Nbrcara = 5; // Nombre de caractére dans le mod de passe
$Mdp="";
srand((double)microtime()*1000000);
for($i=0; $i<$Nbrcara;$i++){
$Mdp.= $Cara[rand()%strlen($Cara)];
}
// Maintenant on fait afficher a l'écran le Mot de passe
echo "Mot de passe : $Mdp";
?>

<h1 style="text-align: center;"><a href="test.html">Le vrai quizz</a></h1>

</body>
</html>


simple.html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title>simple</title>
</head>
<body>
<br>
<form action="verif.php">
Code: <input name="code" type="text"><br>
Email: <input name="mail" type="text""><br>
<br>
<input value="OK" type="submit">
</form>
</body>
</html>


verif.php


<?php


$_POST[$mdp]
if ($code==$mdp)
mail($mail, 'Code', 'Bravo vous avez résussi a retenir le bon code je vous félicite');
else
($mail, 'Code', 'Désolé mai le code que vous avez saisi est erroné');

echo "Mot de passe : $Mdp";


?>

Voila je compte sur votre aide pour me dire ce qui ne va pas car une fois arrivé à verif.php il me met parse error
A voir également:

3 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
10 janv. 2009 à 19:08
Bonsoir,

mes remarques en commentaires
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

</head>

<body>
<?
$Cara = "abBDEFcdefghijkm!nPQRSTUVWXYpqrst0123456789"; // Caractére possible
$Nbrcara = 5; // Nombre de caractére dans le mod de passe
$Mdp="";
srand((double)microtime()*1000000);
for($i=0; $i<$Nbrcara;$i++){
$Mdp.= $Cara[rand()%strlen($Cara)];
}
// Maintenant on fait afficher a l'écran le Mot de passe
echo "Mot de passe : $Mdp";
?>

<h1 style="text-align: center;"><a href="test.html">Le vrai quizz</a></h1>

</body>
</html>


simple.html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title>simple</title>
</head>
<body>
<br>
<form name="form1" method="post" action="verif.php"><!-- manquait des attributs à cette balise form notament method= -->
Code: <input name="code" type="text"><br>
Email: <input name="mail" type="text"><br> <!-- tu avait un " en trop sur cette ligne-->
<br>
<input value="OK" type="submit">
</form>
</body>
</html>


verif.php


<?php
//la il te manque beaucoup de choses

//recup des valeurs postées
$code=$_POST['code']; // la il te manquait le ; a la fin et $code= devant et pas ce qu'il falait entre les []
$mail=$_POST['mail'];

// $mdp tu prend cette variable où ?
if ($code==$mdp)
mail($mail, 'Code', 'Bravo vous avez résussi a retenir le bon code je vous félicite');
else
($mail, 'Code', 'Désolé mai le code que vous avez saisi est erroné');

echo "Mot de passe : $Mdp";


?>


ensuite je ne comprend pas du tout l'enchainement de tes trois pages ?
0
Utilisateur anonyme
10 janv. 2009 à 19:17
merci beaucoup pour cette aide précieuse mais en fait pour la variable $mdp elle vient du premier fichier php
En fait pour t'explqiuer le premier fichier genere un code, le second demande le code à l'utilisateur et la troisieme verifie que la personne a rentré le meme code
Voila merci encore
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
10 janv. 2009 à 20:10
Oui mais un code php s'exécute sur le serveur , il écris la valeur dans la page, affichage dans le navigateur et après c'est fini !

il faut que tu passes la valeur $mdp de page en page.

- première solution en champ caché <input type="hidden"

mais on peut le voir en affichant la source de la page dans le navigateur

- deuxième solution les SESSIONS PHP

la variable est mémorisée sur le serveur

vas voir sur G.. comment ça marche
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
10 janv. 2009 à 21:19
bonsoir, je me permet d'intervenir
pourquoi ne pas utiliser le cryptage md5 pour le MP beaucou plus rapide et simple.
le MP est stocké sous forme crypté dans ta BD directement
exemple
$passcrypte=md5($_POST('motdepasse')); // tu crypte le mot de passe du type
0