Condition elsif ne fonctionne pas comme je le veux.

Condition elsif ne fonctionne pas comme je le veux. - PHP - Programmation

Marsh Posté le 22-05-2005 à 12:03:24    

Salut à tous,
 
Voila mon probleme, j'ai fait un script pour verifier si un email existe deja dans la base de données ainsi qu'un login, jusque là tout fonctionne bien mais en ajoutant une autre condition qui doit verifier si l'heure desirée par l'utilisateur n'existe pas pour la date qu'il a choisit le script me renvoi le message "L'heure que vous avez choisis pour Cette date existe deja" mais apres il enregistre les données dans la bdd  , et moi je ne veut pas que la suite s'execute si l'une de ces conditions est remplis.
 
Voila mon script:
http://hardcodefr.free.fr/source/?code=220505-113500
 
Merci à tout ceux qui m'aideront.

Reply

Marsh Posté le 22-05-2005 à 12:03:24   

Reply

Marsh Posté le 22-05-2005 à 12:06:54    

de rien.

Reply

Marsh Posté le 22-05-2005 à 12:10:54    

mdr


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 22-05-2005 à 13:33:11    

Apparement le lien ne fonctionne plus donc voila le code en entier.
Quand aux deux rigolos  :pt1cable:  "SANS COMMENTAIRES"  :non:  
 

Citation :


<?
mysql_connect("localhost","root","" );
mysql_select_db("test" );
 
// on verifie si les données sont bien entrées
if (isset($_POST['nom']) AND isset($_POST['prenom']) AND isset($_POST['email']) AND isset($_POST['login'])  AND isset($_POST['mdp']) AND isset($_POST['jour']) AND isset($_POST['mois']) AND isset($_POST['annee']) AND isset($_POST['heure']) AND isset($_POST['message']) )
{
    if ($_POST['nom'] != NULL AND $_POST['prenom'] != NULL AND $_POST['email'] != NULL AND $_POST['login'] != NULL AND $_POST['mdp'] != NULL AND $_POST['jour'] != NULL AND $_POST['mois'] != NULL AND $_POST['annee'] != NULL AND $_POST['heure'] != NULL AND $_POST['minutes'] != NULL AND $_POST['message'] != NULL)
    {
        $nom = htmlentities($_POST['nom'], ENT_QUOTES);
        $prenom = htmlentities($_POST['prenom'], ENT_QUOTES);
        $immatriculation = htmlentities($_POST['immatriculation'], ENT_QUOTES);
        $login = htmlentities($_POST['login'], ENT_QUOTES);
        $mdp1 = htmlentities($_POST['mdp'], ENT_QUOTES);
        $mdp = md5($mdp1);
        $email = htmlentities($_POST['email'], ENT_QUOTES);
        $message = htmlentities($_POST['message'], ENT_QUOTES );
        $heure = $_POST['heure']."h".$_POST['minutes'];
        $date = $_POST['jour']."/".$_POST['mois']."/".$_POST['annee'];
 
//on verifie si le login n'existe pas deja
        $donnees = mysql_query("SELECT * FROM matable WHERE login='".$login."' OR email='".$email."' OR heure='".$heure."' " )or die(mysql_error());
        while($resultat = mysql_fetch_array($donnees))
        {
             
            if ($resultat['login'] == $login)
            {
                echo '<center><font color="red"> <b>Ce membre existe deja, veuillez  choisir un autre login.</b></font></center>';
            }
            elseif($resultat['email'] == $email)
            {
            echo 'Cet email existe deja';  
            }
            elseif($resultat['heure'] == $heure AND $resultat['date']== $date)
            {
            echo 'Cette date existe deja';  
            }
         
            else
            {
             
$rand = md5(uniqid(mt_rand()));  
// on enregistre les données sur la db
 
mysql_query("INSERT INTO matable VALUES('', '".$nom."', '".$prenom."', '".$immatriculation."', '".$email."','".$login."', '".$mdp."', '".$date."', '".$heure."', '".$message."','".$rand."') " ) or die(mysql_error());
             
                echo '<center><font color="red"> <b>Vous allez recevoir un email dans les minutes qui suivent pour valider votre rendez-vous</b></font></center>';
 
                // on genere une clé pour la verification de la demande du rdv
 
                 
 
                $le_sujet = "votre demande de rendez-vous" ;
             
                $message = nl2br($message);
                 
                $contenu = "
                <html>
                <head>
                <title>verification</title>
                <body>
                <p>Bonjour,</p>
                <p>pour que votre rendez-vous soit pris en compte vous devez le valider en cliquant sur le lien ci dessous.</p>
                <p><a href='http://127.0.0.1/test/rdv/validation.php?cle=".$rand."&amp;login=".$login."' target='_blank'>http://127.0.0.1/test/rdv/validation.php?cle=".$rand."&amp;login=".$login."</a>
                </p>
                <p>Petit rappel de vos informations :<br>
                Nom : $nom <br>
                Prenom : $prenom <br>
                N° d'immtriculation : $immatriculation <br>
                Login : $login <br>
                Mot de passe : $mdp1 <br>
                Email : $email <br>
                Date : ".$_POST['jour']."/".$_POST['mois']."/".$_POST['annee']."<br>
                Heure : ".$_POST['heure']."h".$_POST['minutes']." <br>
                Motif du rendez-vous : $message<br>
</p>
                 
                Merci.<br>
                Le webmaster.    <br><br>    
                 
                PS : Ce mail est envoyé par un robot, rien ne sert d'y repondre !!!!<br>
</body>
</html>                "    ;
 
 
                mail($_POST['email'], $le_sujet, $contenu,"From: Le Webmaster" );
        }
        }
    }
    else
    {
        echo '<center><font color="red"> <b>SVP vous devez remplir tout les champs sauf le n° d\'immatriculation (si vous ne le connaissez pas).</b></font></center>';
     
    }
}
 
mysql_close();
?>

Reply

Marsh Posté le 22-05-2005 à 13:48:28    

si tu fais des "exit(0)" à chaque erreur cela éviterait d'exécuter le code insérant les données dans la BDD.

Reply

Marsh Posté le 22-05-2005 à 14:07:11    

jlighty a écrit :

si tu fais des "exit(0)" à chaque erreur cela éviterait d'exécuter le code insérant les données dans la BDD.


[:mlc] et les try/catch plutot que de quitter le script comme un bourrin...

Reply

Marsh Posté le 22-05-2005 à 14:11:42    

keyckeceyy les try/catch? http://forum-images.hardware.fr/icones/message/icon10.gif

Reply

Marsh Posté le 22-05-2005 à 14:30:22    

Merci pour vos reponses.
Pouvez vous me montrer comment appliquer ces conditions à mon cas, car je ne vois pas comment les utilisées, j'ai cherchais mais les explications sont pas trés claire.
Merci encore une fois.

Reply

Marsh Posté le 22-05-2005 à 14:54:45    

try catch ? en php ? c'est une nouveauté de php5 ?

Reply

Marsh Posté le 22-05-2005 à 14:59:40    

Reply

Marsh Posté le 22-05-2005 à 14:59:40   

Reply

Marsh Posté le 22-05-2005 à 16:11:34    

Le probleme est reolut,au fait c'etait le while qu'il fallais enlever :sol:  
Merci encore une fois vos reponses

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed