Je fais un petit système d'enregistrement avec un formulaire, je veut que chaque utilisateur puisse être doté d'un numéro à chaque fois qu'un utilisateur appuis sur envoyer, donc la 1ere personne par exemple : auras le numéro 2019, et le second 2020, je pensais crée une table dans la base de données avec une valeur pas défaut de 2019 puis le mettre auto-increment ,mais apparemment c'est ne pas possible .
Quand j'appuie sur submit rien ne se passe.
Merci
- Edité par Moilee Ng Kongo 18 juillet 2019 à 12:29:04
En effet, si tu veux faire comme ça, le mieux serait qu'avant de faire l'insertion, que tu récupères la valeur de la colonne matricule du dernier enregistrement de la table, puis que tu utilises celle-ci pour définir la valeur de la colonne matricule pour l'enregistrement à insérer.
Il te faut bien sûr prendre en compte le cas où tu n'es pas encore d'enregistrement dans la table (ou qu'il n'y en ai plus).
Donc pour schématiser un peu:
Tu laisse ta variable définie comme elle est
Tu fais une requête pour récupérer le dernier enregistrement de la table
Si tu récupères un enregistrement, tu modifies la valeur de la variable avec l'incrémentation de la valeur de l'enregistrement récupéré
Puis tu n'as plus qu'a utiliser la variable pour définir la valeur de la colonne matricule pour le nouvel enregistrement
De cette manière, si tu ne récupères pas d'enregistrement lors de la 3ème étape car la condition ne serait pas respectée, tu auras la valeur par défaut de la variable.
- Edité par Lartak 18 juillet 2019 à 18:44:36
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.
Comme sur des roulettes,vous êtes magnifique. Merci
<?php
$bdd=new PDO('mysql:host=localhost;dbname=inscription_univ','root','');
if(isset($_POST['submit']))
{
if(isset($_POST['nom']))
{
//$mat=20;
$nom=$_POST['nom'];
$recupmatricule=$bdd->query('SELECT matricule FROM test ORDER BY id DESC');
$recup=$recupmatricule->fetch();
$mat = $recup['matricule']+1;
$insert=$bdd->prepare('INSERT INTO test(matricule,nom) VALUES(?,?)');
$insert->execute(array($mat,$nom));
echo " ok";
}
}
?>
<html>
<form method="post">
<input type="text" name="nom" placeholder=" nom" required/>
<br/>
<input type="submit" value="Envoyer"name="submit"/>
<?php
if(isset($recup['matricule']))
{
echo $recup['matricule']+1;
}
?>
</form>
</html>
- Edité par Moilee Ng Kongo 19 juillet 2019 à 12:25:34
Incrémenter une variable à chaque soumission
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
N'oubliez pas d'activer les erreurs PDO.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.