osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> [Résolu]Créer un menu déroulant dans createaccount
armoise
posté 12 Jan 2005, 12:49
Message #1


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



blink.gif j'ai essayé et je n'y arrive pas . Merci pour votre aide :

1 : objet : créer un menu déroulant dans create account avec une dizaine de "code" (ex : aa75) que le client doit choisir lors de son inscription ( à l'image de choisir son pays mais sans forcément créer une nouvelle table !)

2: le "code" doit être visible dans le compte client et apparaître dans les emails envoyés

Merci de votre prompte réponse ! wink.gif


--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
Ryu007
posté 13 Jan 2005, 23:02
Message #2


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1385
Inscrit : 3-June 04
Lieu : Saint-mandé
Membre no 2597



Bonjour Armoise,

Sur le forum US, une demande similaire avait attirée mon attention,
la réponse n'est pas de moi mais il faut que tu te penche sur :

Dropdown Question Box for Create_account screen

Reste à voir, si tu arriveras ensuite à faire les modifs (changer le nom de la table ou des trucs du genre) mais c'est déjà une bonne piste ...
Amicalement


--------------------
Image IPB Image IPB
Go to the top of the page
 
armoise
posté 13 Jan 2005, 23:13
Message #3


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



Merci Ryu007

Créer un menu déroulant pour une page html ou créer un formulaire avec menu déroulant C'est bête comme chou. wub.gif

il doit sûrement exister une solution simple sans création de table et une écriture directe dans create account ?

Je pense reprendre le champ compagny et le modifier en menu déroulant

Bien cordialement


--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
Ryu007
posté 13 Jan 2005, 23:18
Message #4


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1385
Inscrit : 3-June 04
Lieu : Saint-mandé
Membre no 2597



QUOTE
Créer un menu déroulant pour une page html ou créer un formulaire avec menu déroulant C'est bête comme chou

Surement, mais si tu nous disais au moins ce que tu voudrais faire peut-etre aurais-je une idée moins abstraite de ce que tu veux faire ?! Nan ?

Amicalement


--------------------
Image IPB Image IPB
Go to the top of the page
 
manmachine
posté 14 Jan 2005, 05:47
Message #5


Ceinture marron OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1814
Inscrit : 2-July 04
Lieu : Nantes
Membre no 2788



QUOTE

2: le "code" doit être visible dans le compte client et apparaître dans les emails envoyés


si tu veux que ces infos soient visiblent pas d'autre solution que des les stocker dans une table .

Et si en plus il sagit de combobox les infos qui sont selectionnables doivent elles aussi figurer quelques part dans une table , a moins que tu ne les codes en dur dans ton fichier ( ce qui n'est pas tres élégant , ni ergonomique ) .






--------------------
Nous ne sommes pas un SAV, nous aidons, mais nous ne faisons pas à votre place ..
Go to the top of the page
 
armoise
posté 14 Jan 2005, 19:18
Message #6


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



Bonjour

En réponse à Ryu007 :

Je souhaite (pax ex) que le champ Compagny dans create account apparaisse comme un menu déroulant où le client doit choisir entre plusieurs codes : choix : inconnu, choix 2 : NO59, choix 3 VU73 etc ..

Le nombre de codes étant très limité et ils peuvent être inscrits directement dans la page create account. Celà n'est pas gênant

@+



--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
fissiaux
posté 14 Jan 2005, 19:25
Message #7


5eme dan OSC
Icône de groupe

Groupe : Membres
Messages : 17048
Inscrit : 26-November 03
Lieu : Chez moi
Membre no 1669





Pourquoi ne singes tu pas ce qui existe dans create_account pour les pays ?

Tu crées une nouvelle table, avec tes valeurs possibles.

Ensuite tu crées dans catalog/includes/functions/html_output.php, une focntion similaire à tep_get_country_list qui qui va lire ta nouvelle table.

Ensuite tu adpates create_account pour triater et stocker cette nouvelle valeur dans la table customers.
Go to the top of the page
 
armoise
posté 14 Jan 2005, 19:42
Message #8


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



Salut Fissiaux

Merci. J'ai déjà essayé de suivre le même cheminement avec modification du code dans html_output en remplacant country

Une première fois : planté

Je me suis dit, j'ai fait une erreur quelque part. J'essaye une seconde fois : planté

Jamais deux sans trois : planté !

Breton et tétu, je veux bien réessayer une quatrième fois et je t'informe des erreurs ? !!! smile.gif


--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
oneill
posté 14 Jan 2005, 19:48
Message #9


5eme dan OSC
Icône de groupe

Groupe : Administrateur
Messages : 7617
Inscrit : 28-December 03
Lieu : Hollywood les Granits
Membre no 1773



QUOTE
Breton et tétu, je veux bien réessayer une quatrième fois et je t'informe des erreurs

Les Bretons parlent aux Bretons...

Shipping Zone Rates with SQL
Pas sûr et certain mais on dirait que ce module devrait faire l'affaire. A adapter aux codes postaux et communes pour un sql puis l'autre avec les communes et les coûts de transport...

A voir


--------------------
Go to the top of the page
 
armoise
posté 14 Jan 2005, 21:05
Message #10


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



La contribution proposée par Ryu007 reprend l'idée de Fissiaux. Donc merci à vous wink.gif

MAIS Voilà c'est reparti pour un tour ! Quatrième et même plantage !

Fatal error: Call to undefined function: tep_get_source_list() in /home/xxxxx/www/catalog/create_account.php on line 534


Pour info le code dans create account :

<td class="main"><?php echo tep_get_source_list('source') . '&nbsp;' . (tep_not_null(ENTRY_SOURCE_TEXT) ? '<span class="inputRequirement">' . ENTRY_SOURCE_TEXT . '</span>': ''); ?></td>

"où source est le nom de la table et du champ du menu déroulant"

Merci pour vos avis éclairés




--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
armoise
posté 14 Jan 2005, 22:17
Message #11


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



Et le code, pour info, dans HTML_output issu de la contribution citée ci-dessus :

CODE
// Output a form pull down menu
 function tep_draw_pull_down_menu($name, $values, $default = '', $parameters = '', $required = false) {
   $field = '<select name="' . tep_output_string($name) . '"';

   if (tep_not_null($parameters)) $field .= ' ' . $parameters;

   $field .= '>';

   if (empty($default) && isset($GLOBALS[$name])) $default = stripslashes($GLOBALS[$name]);

   for ($i=0, $n=sizeof($values); $i<$n; $i++) {
     $field .= '<option value="' . tep_output_string($values[$i]['id']) . '"';
     if ($default == $values[$i]['id']) {
       $field .= ' SELECTED';
     }

     $field .= '>' . tep_output_string($values[$i]['text'], array('"' => '&quot;', '\'' => ''', '<' => '&lt;', '>' => '&gt;')) . '</option>';
   }
   $field .= '</select>';

   if ($required == true) $field .= TEXT_FIELD_REQUIRED;

   return $field;
 }

////


@+


--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
Ryu007
posté 14 Jan 2005, 23:59
Message #12


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1385
Inscrit : 3-June 04
Lieu : Saint-mandé
Membre no 2597



Bonjour Armoise,
QUOTE
Fatal error: Call to undefined function: tep_get_source_list() in /home/xxxxx/www/catalog/create_account.php on line 534

Pourtant le message est très explicite ...

Apparamment tu as omis d'installer la fonction tep_get_source_list dans includes/functions/html_output.php :
CODE

function tep_get_source_list($name, $selected = '', $parameters = '') {
$sources_array = array(array('id' => '999', 'text' => PULL_DOWN_DEFAULT));
$sources = tep_get_sources();

for ($i=0, $n=sizeof($sources); $i<$n; $i++) {
$sources_array[] = array('id' => $sources[$i]['sources_id'], 'text' => $sources[$i]['sources_name']);
}

return tep_draw_pull_down_menu($name, $sources_array, $selected, $parameters);
}

A copier/coller donc wink.gif

Bonne continuation ou je dirais meme bon code (piqué a Mr Jeanluc blush.gif)

Amicalement


--------------------
Image IPB Image IPB
Go to the top of the page
 
armoise
posté 15 Jan 2005, 12:37
Message #13


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



Merci tout le monde !

et.... Ryu007 ! j'ai copier, j'ai coller. Ca marche. Cette contribution permet de rajouter un menu déroulant dans create account avec création d'une table.

Dropdown Question Box for Create_account screen

Le quatrième essai était le bon. Comme quoi il ne faut jamais désespéré. rolleyes.gif


--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
armoise
posté 19 Jan 2005, 22:37
Message #14


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



mad.gif Bonsoir

Problème non résolu

Et bien non ! Tout fonctionne parfaitement en local...par contre en ligne dans le fichier admin/customer.php j'ai l'erreur suivante que je n'arrive pas à résoudre :

CODE
1064 - You have an error in your SQL syntax near 'on s.sources_id = c.entry_source_id and i.customers_info_id = c.customers_id and' at line 1

select count(*) as total from customers c join address_book a join sources s join customers_info i on s.sources_id = c.entry_source_id and i.customers_info_id = c.customers_id and c.customers_id = a.customers_id and c.customers_default_address_id = a. address_book_id

[TEP STOP]


Vous avez peut être la réponse...Dans tous les cas, merci d'avance


--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 
xaglo
posté 20 Jan 2005, 00:50
Message #15


5eme dan OSC
Icône de groupe

Groupe : Administrateur
Messages : 14909
Inscrit : 22-November 02
Membre no 610



tu as un espace en trop entre le "a." et "address_book_id" à la fin de la requête:
QUOTE
c.customers_default_address_id = a. address_book_id


et sinon, essaye d'enlever les JOIN en les remplaçant par une virgule et le ON par WHERE
CODE
select count(*) as total from customers c, address_book a, sources s, customers_info i WHERE s.sources_id = c.entry_source_id and i.customers_info_id = c.customers_id and c.customers_id = a.customers_id and c.customers_default_address_id = a.address_book_id


--------------------
Ni Hot-line ni Service Après Vente, ces forums sont un lieu d'échanges.
Une Question? Rechercher / FAQ / docV1.pdf / docV2.pdf / contributions
Go to the top of the page
 
armoise
posté 20 Jan 2005, 22:50
Message #16


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 225
Inscrit : 30-June 04
Membre no 2781



rolleyes.gif Ouf ! Merci XAGLO. Là j'aurai été incapable de trouver cette subtilité :

QUOTE
d'enlever les JOIN en les remplaçant par une virgule et le ON par WHERE
.

La contribution fonctionne enfin parfaitement.

Merci



--------------------
- creload 6 en production - 2.2RC2aFRW3C en développement -
Go to the top of the page
 

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 20th May 2013 - 00:03
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)