Votre question

Probleme incrementation php

Tags :
  • MySQL
  • Programmation
Dernière réponse : dans Programmation
30 Juillet 2009 21:43:07

Bonjour à tous,

J'ai un problème d'incrementation php lors du traitement d'un formulaire, voici la fonction concernée :

if(isset($_POST['envoi']))
{
$sqlMax = "SELECT MAX(num_commande) FROM `matable` WHERE num_commande LIKE 'LEB01%' LIMIT 1";
$reqMax = mysql_query($sqlMax);
$maxNumCommande = 'LEB01000';
if($reqMax && mysql_num_rows($reqMax)>0)
$maxNumCommande = 'LEB01'.sprintf("%04s",(mysql_result($reqMax,0,'num_commande')+1));
$num_commande = $maxNumCommande;

Après j'enregistre $num_commande, qui est bien inséré dans la base mais à chaque enregistrement j'ai le même numéro.
Qu'est-ce qui ne va pas dans ma fonction?

Merci pr votre aide!

Autres pages sur : probleme incrementation php

30 Juillet 2009 22:25:06

houla c'est quoi ce code ... mysql_result() est une fonction déprécié de PHP depuis des années et des années.

Sinon c'est d'après le bout de code logique d'avoir toujours la même valeur vu que tu prends la plus grande dans la base et que tu ne la changes apparemment pas ou que tu n'inserts rien de nouveau.
2 Août 2009 00:52:23

salut,
1:coté code, rien à ajouter.

"mysql_result() est une fonction déprécié de PHP depuis des années et des années"

heuu .................. ha ? moi je la trouve souvent bien pratique !

2:coté sgbd, t'emm***** pas à gérer les incréments .. Tu te créé un auto-incrément - au niveau membre de la table concernée- (qu tu concatene si tu veux à l'affichage .. on s'en ****) mais tu fais un simple insert .


Je te raconte pas ton code avec plusieurs accès en simultané à cette donnée . hypothétiquement, (sauf clé primaire), tu risque d'avoir plusieurs fois le même numéro ..... laisse faire le moteur !!

Pour répondre à ta question:
sprintf("%04s",(mysql_result($reqMax,0,'num_commande')+1))
Typage des données?
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS