cles et references

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : cles et references

Re: cles et references

par colibri » 17 sept. 2009, 19:24

Je pense qu'en utilisant un second champ pour mettre ton préfixe, et en optant pour un INT(5) ZEROFILL, cela devrait plus ou moins correspondre à ça.

Re: cles et references

par boblenain » 17 sept. 2009, 11:38

Merci aussi!

La grande question est de savoir comment formuler ma requête car de ce point de vue là je suis un vrai Newbie! Néanmoins ta solution me paraît être celle que je recherche :D

Re: cles et references

par Berzemus » 17 sept. 2009, 11:32

J'opterais pour ne pas toucher au keyref. C'est un champ auto-incrémenté, qui n'est pas toujours utile pour l'utilisateur, et est plutôt une donnée technique se rattachant à la forme plutôt qu'au contenu des données.

Alors je propose simplement un champ supplémentaire, que tu appellerais 'reference' , indexé sur clé unique, ou toutes les libéralités de forme s'ouvriront à toi :mrgreen:

Et en jouant un peu avec la requête SQL, y'a sans doute moyen de le générer concomitamment avec ton keyref.

Re: cles et references

par boblenain » 17 sept. 2009, 11:26

Merci pour la réponse!

J'y pensais aussi. En fait l'idée est que, derrière ça, la personne qui va gérer la publication des annonces doit entrer la référence complète de l'annonce pour la retrouver et l'éditer. Par exemple si la référence est MPS-00033 il faut entrer MPS-00033 et pas 33 bien que "keyref" dans ma table sera "33".

Ce que j'aimerais c'est éviter une concaténation et donc une étape supplémentaire dans mes fichiers php.

Re: cles et references

par Genova » 17 sept. 2009, 11:01

Je ne pense pas, mais pourquoi ne pas le faire en PHP sinon ?
function une_jolie_id($id)
{
   return ('MR-' . str_pad($id, 5, '0', STR_PAD_LEFT));
}

echo une_jolie_id(42); // affiche MR-00042 

cles et references

par boblenain » 17 sept. 2009, 10:16

Bonjour à tous,

Cette fois il ne s'agit pas de php! :mrgreen:

Voilà donc mon soucis : j'ai créé une table dont le premier champ "keyref" est une clef primaire auto incrémentée. Logiquement quand j'affiche ma table, le premier enregistrement retourne une "keyref" de 1, le suivant une "keyref" de 2, le suivant une "keyref" de 3, etc...

Pour l'instant je m'en sers comme référence pour des annonces mais je dois avouer que "référence : 1" est bien moins flatteur pour un utilisateur que quelque chose du genre "référence : MR-0001"

Est-il donc possible de créer avec mysql un champ qui serait auto-incrémenté et dont la forme de base serait "MR-00000" comme dans mon exemple au dessus?

Merci d'avance pour vos réponses.