Incrémentation d'une variable ds une table mysql en php

cs_amine124 Messages postés 48 Date d'inscription vendredi 20 février 2009 Statut Membre Dernière intervention 5 août 2016 - 14 mai 2011 à 23:22
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 16 mai 2011 à 15:58
Bonjour,
j'ai un pb d'incrémentation d'une variable $code_elv lorsqu'elle sera "elv10", elle peut pas ainsi s'incrémenter, je sais pas pourquoi?! j'ai utliser une fct pour ce but la, ça marche bien jusqu'à elv10 comme je viens de dire, voici le code:

<?php
.....
function select_dern_cd_el($table_cib,$dern_ergs)
{
$req0="SELECT MAX($dern_ergs) FROM $table_cib";
$req1=mysql_query($req0) or die (mysql_error());
$MAX_ID=mysql_fetch_array($req1);
$string_a_separer=$MAX_ID[0];

if(empty($string_a_separer))
{ $string_a_separer="elv0";
list($cont1,$cont2)=explode("v",$string_a_separer);
}
else {
list($cont1,$cont2)=explode("v",$string_a_separer); }

$enregis_incremente0=$cont2+1;
$enregis_incremente="elv".$enregis_incremente0;
return $enregis_incremente;
}
.....
$rq5=mysql_query("INSERT INTO eleve VALUES ('$nom_elv','$prenom_elv','$code_elv')") or die (mysql_error());
.....
?>
le résultat est l'insertion des dix premiers enregistrement, et l'affichage du msg: "Duplicata du champ 'elv10' pour la clef 'PRIMARY' ".
veuillez me dire où est le pb exactement?! et merci d'avance.

1 réponse

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
16 mai 2011 à 15:58
Si tu veux incrémenter une valeur dans ta base de données, il ne faut pas le faire un php mais en SQL.

$requete = UPDATE table SET var=var+1 WHERE id='identifiant';

Tu executes ca et c'est réglé.
0
Rejoignez-nous