begin process at 2012 05 28 14:24:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

calcul d'incrémentation


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

calcul d'incrémentation

vendredi 7 avril 2006 à 14:45:17 | calcul d'incrémentation

vince2229

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.

Merci.

Vince

vendredi 7 avril 2006 à 14:52:37 | Re : calcul d'incrémentation

Teclis01

bonjour,
ne serais pas plus simple en mettant un separateur entre chaque ?
du genre:
T1-152-291
T1-153-291
apres il suffit d'utiliser la fonction explode
ou sinon si tu veux garder tes clefs unique comme avant et bien il faut utiliser la fonction substr substr
et la avec ces clefs
$key="T1152291";
il faut faire
$nombre_a_trois_chiffre=substr($key,2,3);
et apres tu en fais ce que tu veux!

Merci d'accepter si la réponse te convient

-------------------------------------------------------------------------------------------------------
          Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

vendredi 7 avril 2006 à 15:02:16 | Re : calcul d'incrémentation

vince2229

Pour récupérer la valeur des 3 chifres, ton message m'aide bien.
Mais comment faire une sélection du l'identifiant maximum començant par le profil saisi dans le formulaire??

par exemple :
dans ma base j'ai :
    - T1152291
    - T1153291
    - T1154291
    - T4005291

Dans mon formulaire, j'ai sélectionné T1 donc je voudrai pouvoir récupérer celui qui est le plus grand, c'est à dire : T1154291

Comme ça après j'utilise substr pour effectuer mon incrémentation.

Le problème est de récupérer l'identifiant le plus élevé commençant par le profil sélectionné

Merci

vendredi 7 avril 2006 à 15:27:27 | Re : calcul d'incrémentation

GRenard

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é


Cherchez, Essayez et Testez avant de Poser une question !
[ Lien ]
vendredi 7 avril 2006 à 16:09:35 | Re : calcul d'incrémentation

raven44

Hello,

Je suis entièrement d'accord avec GRenard !
samedi 8 avril 2006 à 15:53:33 | Re : calcul d'incrémentation

Anthomicro

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.

a +


    lundi 10 avril 2006 à 09:04:48 | Re : calcul d'incrémentation

    vince2229

    salut,

    ton idée est bonne si les 2 premiers caractères ne changent pas.

    Merci quand même

    lundi 10 avril 2006 à 10:09:28 | Re : calcul d'incrémentation

    Anthomicro

    Bah ton identifiant à chercher tu le connais non ? tu modifies la requête en conséquence :-)

    Si t'as trois caractères à gérer ça fera -3 ^^




      Cette discussion est classée dans : chiffres, calcul, incrémentation, identifiant, profil


      Répondre à ce message

      Sujets en rapport avec ce message

      calcul d'une durée [ par noneed4anick ] j'ai deux colonnes ds un base MySQL au format datetime ( 2002-01-15 15:57:32 )comment faire pour calculer la durée qu'il s'est écoulé entre les deux, filtrer un tableau URGENT [ par flyersy ] je récupère un résultat MySQL dans un tableau1 dont une des colonne contient un identifiant et une autre une chaîne "chem" de type 1,52,4,8. Je concat calcul de l'age [ par Maheu ] Salut à tous!!Je suis newby en PhP et voudrai calculer un age a partir de deux dates (la date courante date() et une date de naissance au format dd-mm MySql/PHP [ par Morgiver ] Je voudrais faire une section membres ou les membres pourrais modifier leur profil et que les autres membres puisse voir leur profil, je ne sais pas t détruire variable de sessions [ par professeursidi ] Salut,voila dans mon site avec base de données j'utilise les sessions pour garder mes variables mais pti pb :Si je choisi par exemple de consulter un Calcul ecart entre 2 heures [ par must ] Salut,voila ce que je cherche,mais trouve pas,alors si vous pouviez m'aiderJe fix une geure limite,dison:20 heures,30, minutes,20 secondesQuand on vie Calcul [ par cyrilnd01 ] Bonjour @tous,Voila sa fait déja une semaines que je cherche comment je pourrait faire pour calculer un trucs, et je n'arrive pasJe vais vous expliqué probleme de stockage et calcul d'agregat [ par ludlu ] salut au lecteur de ce message,je voudrai pouvoir realiser ceci :J'ai a calculé un agregat a partir de resultats de plusieurs requetes qui retourneron calcul de l'espace utilisé sur le serveur [ par jaketstream ] salutvoilà, j'ai deux questions :1. j'ai mis en place un script qui permet de scruter l'ensemble des dossiers et de donner leur taille, puis à la fin Incrémenter [ par Jackboy ] J'ai besoin d'aide pour un incrémentation!J'ai un numéro de facture dans une base de donnée mysql qui commance par EL0001 et j'aimerai que l'incrément


      Nos sponsors


      Sondage...

      Comparez les prix

      CalendriCode

      Mai 2012
      LMMJVSD
       123456
      78910111213
      14151617181920
      21222324252627
      28293031   

      Consulter la suite du CalendriCode

      A découvrir



       
      Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
      CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
      CodeS-SourceS.com© est une marque déposée tous droits réservés

      Google Coop CodeS-SourceS Google Coop CodeS-SourceS
      Temps d'éxécution de la page : 2,324 sec (3)

      Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales