cs_vince2229
Messages postés14Date d'inscriptionjeudi 18 août 2005StatutMembreDernière intervention25 juin 2009
-
7 avril 2006 à 14:45
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
10 avril 2006 à 10:09
Bonjour tout le monde,
Voilà j'essaie de trouver comment calculer un identifiant unique sachant que l'identifiant est formé de telle façon :
profil(ex : T1) + nombre à 3 chiffres + 291.
En fait, mon calcul voudrai sélectionner tous les identifiant commençant par le profil choisi dans le formulaire.
Je voudrai ensuite récupérer le plus élevé, extraitre les 3 chiffres
après le profil et lui rajouter 1 pour créer un nouvel identifant.
En gros ça donnerait :
T1152291
T1153291.
Si quelqu'un a une idée, ce serai génial, car là, je m'y perd complètement.
cs_GRenard
Messages postés1662Date d'inscriptionlundi 16 septembre 2002StatutMembreDernière intervention30 juillet 20081 7 avril 2006 à 15:27
Tu vas toutes les chercher
tu enregistres dans un tableau juste ces 3 chiffres à la fois
et ensuite tu fais max($ton_tableau) et tu récupère la plus grande valeur
Tu ajoutes 1 et le tour est joué
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 8 avril 2006 à 15:53
Salut,
mettons que t'ais une table avec un seul champ de type varchar nommé "monchamp" contenant par exemple :
T13335454
T12225224
T11111111
T1 étant le motif ensuite ta suite de chiffres.
Tu veux récupérer le maximum de ce qu'il y a après T1 ça donne ça en SQL (y'a surement une autre méthode mais bon ça, ça fonctionne, et vu que je suis pas un pro en SQL je me contenterais de ça ^^)
SELECT MAX(RIGHT(monchamp,CHAR_LENGTH(monchamp)-2)) FROM test
en gros ça va te retourner 3335454 vu que c'est le nombre maxi.
Ensuite soit on prend les trois premiers chiffres via mysql ce qui va faire une requête à rallonge (c'est pas forcément utile) soit tu passes par PHP avec la fonction substr par exemple.