Comment dupliquer un code ?

Comment dupliquer un code ? - Perl - Programmation

Marsh Posté le 09-08-2005 à 17:58:06    

Bonjour,
dans un fichier qui gère un catalogue, j'aimerai avoir la possibilité d'ajouter un second catalogue, on m'a dit de faire un copier coller du code en ajoutant "2" au lieu de 1, cependant, je dois manquer qq chose car ca ne fonctionne pas vraiment.
 
Une idée ?
 
Le code d'origine:

Code :
  1. package migc_cat_config;
  2. @ISA = qw(Exporter);
  3. @EXPORT = qw(
  4.              %cats_config
  5.              );
  6. use define;
  7. use admin;
  8. %cats_config =
  9. (
  10. "1" =>{          # cat ID
  11.         "has_pic"=>"n",
  12.    "has_file"=>"n",
  13.    "nbfields"=>"8",
  14.    "labels"=>{
  15.               "1"=>"Nom",
  16.        "2"=>"Adresse",
  17.        "3"=>"Localité",
  18.                                            "4"=>"Tél.",
  19.                                            "5"=>"Fax",
  20.                                            "6"=>"Email",
  21.                                            "7"=>"Website",
  22.                                            "8"=>"Stand"
  23.              },
  24.         "ordby"=>"objs.f1"
  25.        }
  26. );
  27. $display_fields{"1/Nom"} = "f1";
  28. $display_fields{"2/Stand"} = "f8";
  29. $searchable_fields[0] = 'f1';
  30. $searchable_fields[1] = 'f8';
  31. 1;


 
 
 
Ce que j'ai tenté de faire :

Code :
  1. package migc_cat_config;
  2. @ISA = qw(Exporter);
  3. @EXPORT = qw(
  4.              %cats_config
  5.              );
  6. use define;
  7. use admin;
  8. %cats_config =
  9. (
  10. "1" =>{          # cat ID
  11.         "has_pic"=>"n",
  12.    "has_file"=>"n",
  13.    "nbfields"=>"8",
  14.    "labels"=>{
  15.               "1"=>"Nom",
  16.        "2"=>"Adresse",
  17.        "3"=>"Localité",
  18.                                            "4"=>"Tél.",
  19.                                            "5"=>"Fax",
  20.                                            "6"=>"Email",
  21.                                            "7"=>"Website",
  22.                                            "8"=>"Stand"
  23.              },
  24.         "ordby"=>"objs.f1"
  25.        }
  26. );
  27. $display_fields{"1/Nom"} = "f1";
  28. $display_fields{"2/Stand"} = "f8";
  29. $searchable_fields[0] = 'f1';
  30. $searchable_fields[1] = 'f8';
  31. 1;
  32. use define;
  33. use admin;
  34. %cats_config = 
  35. (
  36. "2" =>{          # cat ID
  37.         "has_pic"=>"n",
  38.    "has_file"=>"n",
  39.    "nbfields"=>"8",
  40.    "labels"=>{
  41.               "1"=>"Nom",
  42.        "2"=>"Adresse",
  43.        "3"=>"Localité",
  44.                                            "4"=>"Tél.",
  45.                                            "5"=>"Fax",
  46.                                            "6"=>"Email",
  47.                                            "7"=>"Website",
  48.                                            "8"=>"Stand"
  49.              },
  50.         "ordby"=>"objs.f1"
  51.        }
  52. );
  53. $display_fields{"1/Nom"} = "f1";
  54. $display_fields{"2/Stand"} = "f8";
  55. $searchable_fields[0] = 'f1';
  56. $searchable_fields[1] = 'f8';
  57. 2;

Reply

Marsh Posté le 09-08-2005 à 17:58:06   

Reply

Marsh Posté le 09-08-2005 à 18:49:34    

pas mal le "2;" final...
 
il va falloir que tu ouvre un boukin ou un tutoriel perl et que tu t'y mette un peu!
 
bon, à mon avis c'est plutot un truc dans ce genre la que tu cherche à faire:
 

Code :
  1. package migc_cat_config;
  2. @ISA = qw(Exporter);
  3. @EXPORT = qw(
  4.              %cats_config
  5.              );
  6. use define;
  7. use admin;
  8. %cats_config =
  9. (
  10. "1" =>{          # cat ID
  11.         "has_pic"=>"n",
  12.    "has_file"=>"n",
  13.    "nbfields"=>"8",
  14.    "labels"=>{
  15.               "1"=>"Nom",
  16.        "2"=>"Adresse",
  17.        "3"=>"Localité",
  18.                                            "4"=>"Tél.",
  19.                                            "5"=>"Fax",
  20.                                            "6"=>"Email",
  21.                                            "7"=>"Website",
  22.                                            "8"=>"Stand"
  23.              },
  24.         "ordby"=>"objs.f1"
  25.        },
  26. "2" =>{          # cat ID
  27.         "has_pic"=>"n",
  28.    "has_file"=>"n",
  29.    "nbfields"=>"8",
  30.    "labels"=>{
  31.               "1"=>"Nom",
  32.        "2"=>"Adresse",
  33.        "3"=>"Localité",
  34.                                            "4"=>"Tél.",
  35.                                            "5"=>"Fax",
  36.                                            "6"=>"Email",
  37.                                            "7"=>"Website",
  38.                                            "8"=>"Stand"
  39.              },
  40.         "ordby"=>"objs.f1"
  41.        }
  42. );
  43. $display_fields{"1/Nom"} = "f1";
  44. $display_fields{"2/Stand"} = "f8";
  45. $searchable_fields[0] = 'f1';
  46. $searchable_fields[1] = 'f8';
  47. 1;


Reply

Marsh Posté le 09-08-2005 à 18:56:07    

a quoi sert le 1; a la fin ?
Grand merci, ca fonctionne mais j'aimerai comprendre  :sweat:


Message édité par Dolby le 09-08-2005 à 19:03:37
Reply

Marsh Posté le 09-08-2005 à 19:00:05    

le 1 sert à indiquer que ton module est chargé correctement.
si tu ne le met pas tu aura une erreur genre "module must return a true value" quand tu fera ton "use".
Donc en fait on peu mettre n'importe quelle valeure, pourvu qu'elle soit vraie (1, 2, "tralala", etc.).
 
Je te conseil les livres oreilly (on les trouve en lignes sur certains sites d'universités (pirates!))
 
Bon courage

Reply

Marsh Posté le 09-08-2005 à 19:04:03    

merci pour ton aide :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed