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

PHP & Base de données Discussion :

AUTO INCREMENT dans PHPMYADMIN et incrémenter un id a chaque utilisateur [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut AUTO INCREMENT dans PHPMYADMIN et incrémenter un id a chaque utilisateur
    Bonjour,
    vous l 'avez compris j'ai besoin d'AUTO INCREMENT dans phpmyadmin et je ne le trouve pas?
    Pouvez vous m'aider?
    Ce que je veux faire plus precisaiment,c'est incrémenter un id pour chaque utilisateur mais je n'y arrive pas vraiment.Je suis en train de faire un site avec divers menus.
    Voici mon code pour ma page inscription,que dois je faire pour incrémenter l'id de chaque utilisateur?
    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
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
     
    <?php
     
    // on teste si le visiteur a soumis le formulaire
     
    if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
     
    	// on teste l'existence de nos variables. On teste également si elles ne sont pas vides
     
    	if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['email']) && !empty($_POST['email'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))&& (isset($_POST['annee_debut_scolarite']) && !empty($_POST['annee_debut_scolarite']))&& (isset($_POST['annee_fin_scolarite']) && !empty($_POST['annee_fin_scolarite'])) && (isset($_POST['situation_actuelle']) && !empty($_POST['situation_actuelle']))) {
     
    	// on teste les deux mots de passe
     
    	if ($_POST['pass'] != $_POST['pass_confirm']) {
     
    		$erreur = 'Les 2 mots de passe sont différents.';
     
    	}
         // on teste si syntaxe email est exacte 
    	else {
     
    		$connexion = mysqli_connect ('localhost', 'root', '', 'mysql');
     
    		//mysql_select_db ('ancienseleves', $base);
     
     
     
    		// on recherche si ce login est déjà utilisé par un autre membre
     
    		$sql = 'SELECT count(*) FROM membres WHERE login="'.mysqli_escape_string($connexion, $_POST['login']).'"';
     
    		$req = mysqli_query($connexion, $sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysqli_error($connexion));
     
    		$data = mysqli_fetch_array($req);
     
     
     
    		if ($data[0] == 0) {
     
    		$sql = 'INSERT INTO membres VALUES( "'.mysqli_escape_string($connexion, $_POST['login']).'", "'.mysqli_escape_string($connexion, $_POST['email']).'", "'.mysqli_escape_string($connexion, md5($_POST['pass'])).'","'.mysqli_escape_string($connexion, $_POST['annee_debut_scolarite']).'", "'.mysqli_escape_string($connexion, $_POST['annee_fin_scolarite']).'", "' .mysqli_escape_string($connexion, $_POST['situation_actuelle']).'")';
     
    		$req = mysqli_query($connexion, $sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error($connexion));
     
     
     
    		session_start();
     
    		$_SESSION['login'] = $_POST['login'];
     
    		header('Location: membre.php');
     
    		exit();
     
    		}
     
    		else {
     
    		$erreur = 'Un membre possède déjà ce login.';
     
     	    }
     
        }
     
    	}
     
    	else {
     
    	$erreur = 'Au moins un des champs est vide. Merci de ressaisir les champs manqués!!';
     
    	}
     
    }
     
    ?>
     
    <html>
     
    <head>
     
    <title>Inscription</title>
     
    </head>
     
     
     
    <html lang="fr">
    		<head>
    	    <title>Menu html/Css recensement college</title>
    		<meta charset="utf-8">
    		<meta name="viewport" content="width=device-width, initial-scale=1">
    		<link rel="stylesheet" href="fichier css.css">
    	</head>
    	<body>
    		<header>
    		<img src="images/banniere creteil.jpg"height="200"style="width: 1600px"VSPACE="0" HSPACE="0" align=center  /> 
    			<nav>
    			<label for="menu-mobile" class="menu-mobile">Menu</label>
    			<input type="checkbox" id="menu-mobile" role="button"> 
    			<ul>
    				<li class="menu-acceuil"><a href="index.html">ACCUEIL </a></li>
    				<li class="menu-inscription"><a href="inscription.php">Inscription</a>
    				</li>
    				<li class="menu-connexion"><a href="connexion.php"> connexion </a>
     
    				</li>
    				<li class="menu-college"><a href="pageCollege html.html"> Le college Amedee Laplace </a>
    				</li>
    				<li class="menu-liste"><a href="#"> Les anciens eleves du college </a>	
    				</li>
    			</ul>
    		</nav>
    		 </div>
    		 </header><hr>
    		 <div><center><IMG src="images/college section.jpg" alt="Le France" height="300" style=" width: 1200px" VSPACE="20" HSPACE="20" Align="center"></center></div>
    	</header>
    	<hr>
    	    <center>Bienvenu à vous cher  <STRONG>visiteurs</STRONG>.<BR></center>
    	<!-- <div><center><IMG src="images/college section.jpg" alt="Le France" height="300" style=" width: 1050px" VSPACE="20" HSPACE="20" Align="center"></center></div>
    	 -->
    	<!--<section>
    	<p><center> Ce site permet aux anciens élèves du college Amedee Laplace de Créteil(94)
    	de se recenser et donc d'avoir la possiblité de contacter leurs anciens camarade de classe.Pour ce faire, <BR>
    	il vous suffit tout simplement de créer un compte  dans le menu "inscription" puis,<BR>vous inscrire comme ancien élève dans le menu "inscription pour se recenser".Et voila c'est simple non?.</center>
    	</p>
    	</section>
    	-->
     
     
     
    	<form action="inscription.php" method="post">
     
        <fieldset>
        <legend>Inscription à l'espace membre :</legend>
     
     
    	<form action="inscription.php" method="post">
     
    	pseudo : <br><input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br> <br />
     
    	Adresse Mail : <br><input type="text" name="email" value="<?php if (isset($_POST['email'])) echo htmlentities(trim($_POST['email'])); ?>"><br><br />
     
    	Mot de passe :<br> <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br><br />
     
    	Confirmation du mot de passe : <br><input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br><br />
     
    	année debut de scolarité : <br><input type="int" name="annee_debut_scolarite" value="<?php if (isset($_POST['annee_debut_scolarite'])) echo htmlentities(trim($_POST['annee_debut_scolarite'])); ?>"><br> <br />
     
    	année fin de scolarité : <br><input type="int" name="annee_fin_scolarite" value="<?php if (isset($_POST['annee_fin_scolarite'])) echo htmlentities(trim($_POST['annee_fin_scolarite'])); ?>"><br> <br />
     
    	situation actuelle : <br><input type="text" name="situation_actuelle" value="<?php if (isset($_POST['situation_actuelle'])) echo htmlentities(trim($_POST['situation_actuelle'])); ?>"><br> <br />
    	<br>
    	<input type="submit" name="inscription" value="Inscription">
     
    	</form>
     
     
     
        <br><br>
     
        <?php
     
         if (isset($erreur)) echo '<br /><br />',$erreur;
     
        ?>
    	 <!-- <p>Vous pouvez <a href="#">réinitialiser votre mot de passe</a> si vous l'avez oublié.</p></p>
    	  <p>Si vous n'avez pas de compte, vous pouvez <a href="inscription.php">en créer un</a> dès maintenant.</p>
     
    	<img src="images/college pied de page.jpg" height="200" style="width: 1050px"VSPACE="0" HSPACE="8" align=center  />
    	-->
     
     
     
    	<footer>
     
    	<hr>
    	<img src="photosEleves/sami12.jpg" height="60" style="width: 60px;"  VSPACE="0" HSPACE="8" align=left />
    	<p>Hella Sami:Créateur du site</p>
     
    	</footer>
     
    	</body>
    </html>
    Je precise que je suis avec la version 2.5 de wampServer,est ce pour cela?
    Merci d'avance,
    Samix

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Quelle est la structure de la table ?

    Il suffit d'avoir un champs id, INT, AUTO INCREMENT (= qui s'incrémente automatiquement)
    Où est le problème ?...

  3. #3
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Et dans ta requête INSERT il faut spécifier le nom des colonnes (en ne mettant pas la colonne id)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO membres (login,email...) VALUES (......)
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    Merci pour vos reponses et ma table se présente comme ceci :
    Nom : table photo.png
Affichages : 16255
Taille : 74,7 Ko
    Le probleme c'est que quand je rentre sur ma page inscription dans les diiferents champs des données ce message d'erreur apparait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    !) Attention: mysql_error () attend que le paramètre 1 soit une ressource, objet donné dans C: \ wamp \ www \ Nouveau dossier \ inscription.php à la ligne 41
    Appelez Stack
    #	Temps	Mémoire	Fonction	Emplacement
    1	0,0011	274496	{principale}( )	.. \ inscription.php : 0
    2	0.0065	284768	mysql_error ()	.. \ inscription.php : 41
    Erreur SQL! INSÉRER INTO membres (login, email, laissez-passer, annee_debut_scolarite, annee_fin scolarité, situation_actuelle) VALUES ("jojo", "jojo.hella@yahoo.com", "81dc9bdb52d04dc20036dbd8313ed055", "2000", "2004", " lycée ")
    Pouvez vous m'aider je ne trouve pas l'erreur

  5. #5
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Bonjour,

    Quelle est la structure de la table ?

    Il suffit d'avoir un champs id, INT, AUTO INCREMENT (= qui s'incrémente automatiquement)
    Où est le problème ?...
    C'est ce que je voulais faire.Je voulais attribuer au champ id l'AUTO ICREMENT mais cette propriété n'existe pas (ou ne semble pas exister) dans phpMyadmin (dans ma version en tout cas).
    merci d'avance

  6. #6
    Invité
    Invité(e)
    Par défaut
    Il y a une case à cocher "AI".

  7. #7
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Il y a une case à cocher "AI".
    Oui je l'ai coché mais le message suivant apparait toujours apres avoir entrer des info dans mes differents champs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ( ! ) Warning: mysql_error() expects parameter 1 to be resource, object given in C:\wamp\www\Nouveau dossier\inscription.php on line 41
    Call Stack
    #	Time	Memory	Function	Location
    1	0.0010	275584	{main}( )	..\inscription.php:0
    2	0.0030	285848	mysql_error ( )	..\inscription.php:41
    Erreur SQL !INSERT INTO membres(login,email,pass,annee_debut_scolarite,annee_fin scolarité,situation_actuelle) VALUES("","jojo", "jojo.hella@yahoo.com", "0cc175b9c0f1b6a831c399e269772661","2000", "2004", "lycee")

  8. #8
    Invité
    Invité(e)
    Par défaut
    Corrige la requête INSERT.

  9. #9
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Corrige la requête INSERT.
    comme ceci?
    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
     
    		if ($data[0] == 0) {
     
    		$sql = 'INSERT INTO membres(login,email,pass,annee_debut_scolarite,annee_fin scolarité,situation_actuelle) VALUES("'.mysqli_escape_string($connexion, $_POST['login']).'", "'.mysqli_escape_string($connexion, $_POST['email']).'", "'.mysqli_escape_string($connexion, md5($_POST['pass'])).'","'.mysqli_escape_string($connexion, $_POST['annee_debut_scolarite']).'", "'.mysqli_escape_string($connexion, $_POST['annee_fin_scolarite']).'", "' .mysqli_escape_string($connexion, $_POST['situation_actuelle']).'")';
     
    		$req = mysqli_query($connexion, $sql) ;
     
     
     
    		session_start();
     
    		$_SESSION['login'] = $_POST['login'];
     
    		header('Location: membre.php');
     
    		exit();
     
    		}

  10. #10
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    ah saye j ai réussi merci beaucoup !!

  11. #11
    Invité
    Invité(e)
    Par défaut
    Attention aux noms des champs / colonnes : annee_fin scolarité
    • PAS d'espace ! *
    • PAS d'accents ! *


    * En tout cas, à éviter, sinon, au moins, mettre des apostrophes : 'annee_fin scolarité'

  12. #12
    Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2017
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    merci beaucoup

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

Discussions similaires

  1. Je trouve pas les .class dans mon dossier classes
    Par amine84 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 15/12/2007, 14h26
  2. Auto-Increment dans PySqLite ?
    Par Ggamer dans le forum Général Python
    Réponses: 2
    Dernier message: 10/09/2007, 11h42
  3. Réponses: 4
    Dernier message: 10/08/2006, 13h44
  4. [SQL Server] auto increment dans une vue
    Par pimousse_cerise dans le forum Langage SQL
    Réponses: 4
    Dernier message: 16/05/2006, 10h18
  5. 2 auto increment dans une meme table
    Par gesualda dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 12/10/2005, 09h31

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