IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Éviter un nouvel enregistrement


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut Éviter un nouvel enregistrement
    Bonjour,

    Je pense que mon problème est simple mais je ne sais pas comment faire.
    Quand je clique sur le bouton "valider" du formulaire les données sont bien enregistrées.
    Le problème c'est que si je clique encore sur le bouton "valider" les même données sont enregistrées une nouvelle fois avec un id différent.

    Donc comment empêcher un 2ème enregistrement avec les mêmes données.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    $message = "";
    if (isset($_POST['utilisateur']))	$utilisateur = $_POST['utilisateur'];
    else $utilisateur ="";
    if (isset($_POST['password']))	$password = $_POST['password'];
    else $password ="";
    if (isset($_POST['mail']))	$mail = $_POST['mail'];
    else $mail ="";
     
    if (!empty($_POST['mail'])){
    	$adresse=htmlentities($_POST['mail']);
    	if(VerifierAdresseMail($adresse)){
      		$message = "";
    	}
    	else {
    		$message = "<p style='color:red'>Adresse mail non valide. Merci de recommencer.</p>";
    		$mail="";
    	}
    }
     
    if (isset($_POST['utilisateur'])){
    	$sql = mysql_query("SELECT * FROM proprietaires WHERE user = '$utilisateur'");
    	if (mysql_num_rows($sql) > 0){
    		$res = mysql_fetch_array($sql);
    		$id_proprietaire = $res['id_proprietaire'];
    		$user_table = $res['user'];
    		$pass_table = $res['pass'];
    		$utilisateur = "";
    		$message = "<p style='color:red'>Ce nom utilisateur est déjà pris. Merci de recommencer.</p>";
    	}
    }
    if (isset($_POST['password'])){
    	if ((strlen($_POST['password'])) > 10){
    		$password = "";
    		$message = "<p style='color:red'>Le mot de passe est limité à 10 caractères. Merci de recommencer.</p>";
    	}
    }
    if (isset($_POST['bouton_inscription'])){
    	if ((empty($_POST['utilisateur'])) || (empty($_POST['password'])) || (empty($_POST['mail']))){
    		$message = "<p style='color:red'>Merci de renseigner tous les champs.</p>";
    	}
    	else {
    		$date = date("Y-m-d");
    $niveau = 1;
    		$entree_pass = sha1($_POST['password']);
    		// enregistrement de l'inscription 
    		$rsql = "INSERT INTO proprietaires(id_proprietaire, user, pass, mail, date_inscript, niveau) 
    			VALUES('','$utilisateur','$entree_pass','$mail','$date','$niveau')";
    			$id_proprietaire = mysql_insert_id(); 
    			mysql_query($rsql) or die('Erreur SQL !'.$rsql.'<br>'.mysql_error());
    			$_SESSION['utilisateur'] = $utilisateur;
    			$_SESSION['id_proprietaire'] = $id_proprietaire;
    			$message = "<p style='color:blue'>Vous êtes inscrit(e) sur médiathèque !</p>";
    	}
    }
    ?>
    <div style="margin-left:170px; margin-top:40px">
     
    Inscrivez-vous dès maintenant pour gérer votre médiathèque
    <br />
    <form name="inscription" method="POST" action="index.php?page=inscription">
    <table border=0>
    	<tr>
    		<td align='right'>Nom utilisateur :&nbsp;</td><td><input type="text" name="utilisateur" value="<?php echo $utilisateur;?>"></td>
    	</tr>
    	<tr>
    		<td align='right'>Mot de passe :&nbsp;</td><td><input type="password" name="password" value="<?php echo $password;?>"></td>
    	</tr>
    	<tr>
    		<td align='right'>adresse mail :&nbsp;</td><td><input type="text" name="mail" value="<?php echo $mail;?>" style="width:200px"></td>
    	</tr>
    	<tr height="35px" valign="bottom">
    		<td></td><td><input type="submit" name="bouton_inscription" value="valider" style="width:100px; height:20px; font-size:12px"></td>
    	</tr>
    </table>
    </form>
    <?php	echo $message;?>
    </div>
    Merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Apres l'INSERT tu vides les variables.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut
    Merci

    Je reviendrai pour les sessions et les cookies

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Nouvel enregistrement
    Par arjo54 dans le forum Access
    Réponses: 2
    Dernier message: 30/10/2005, 19h22
  2. Nouvel enregistrement
    Par zut94 dans le forum Access
    Réponses: 1
    Dernier message: 25/10/2005, 13h32
  3. Réponses: 2
    Dernier message: 29/09/2005, 14h00
  4. comment avoir un nouvel enregistrement
    Par legillou dans le forum Access
    Réponses: 3
    Dernier message: 23/06/2005, 14h21
  5. Affichage du nouvel Enregistrement
    Par estancha dans le forum IHM
    Réponses: 8
    Dernier message: 13/10/2004, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo