(résolu) Afficher un logo du mode de paiement, Dans la page order de l'admin (a coté du status) |
Bienvenue invité ( Connexion | Inscription )
(résolu) Afficher un logo du mode de paiement, Dans la page order de l'admin (a coté du status) |
5 Jun 2009, 16:10
Message
#1
|
|
Ceinture marron OSC Groupe : Membres Messages : 1441 Inscrit : 24-April 03 Membre no 1102 |
Bonjour à toute et à tous !
Voila , je cherche pour améliorer la présentation de la liste des commande, en effet j'aimerais pouvoir dans le tableau order.php, afficher un logo relatif au mode de paiement, et ceux juste à coté du status. J'y suis arrivé en utilisant des switch via le titre de la méthode, malheureusement cette méthode à ces limite car le titres trop long ou comportant des caractères spéciaux (accents) pose problème, la méthode la plus propore serait de pouvoir utiliser le code du mode de paiement, c'est à dire l'abréviation, comme ceci: eubanktransfer pour les virement bancaires moneyorder pour les chèques. etc.... J'ai donc fait ceci: Code if ($payment_modules[$i]['id'] == 'eubanktransfer') echo tep_image(DIR_WS_ICONS . 'paie_transfert.gif', 'Virement bancaire'); Mais çà ne marche pas, la encore un soucis de syntaxe, je n'ai pas de message d'erreur, y'a til moyen de récupérer le code du module de paiement ? ou y'a t'il un id pour les module de paiement ? si oui comment le récupérer dans orders ? Ce message a été modifié par polo - 12 Jun 2009, 23:32. -------------------- OSC 2.1.3 et MS2 (PHP Version 5.2.17)
|
|
5 Jun 2009, 20:16
Message
#2
|
|
2eme dan OSC Groupe : Membres VIP Messages : 3712 Inscrit : 11-April 07 Lieu : Ile de la Réunion Membre no 16487 |
Salut
Utiliser ne nom de la classe du module de paiement serait certainement le meilleur moyen de faire ce que tu veux, malheureusement, cette info est stockée nulle part, ni dans la BDD, et encore moins dans la classe "order". J'ai comme l'impression que tu n'as pas vraiment le choix de le rajouter dans la BDD, table "orders". Dans cette tu as donc actuellement le champ "payment_method", faudrait donc rajouter un champ du genre "payment_class". Faudra alors mettre à jour tout ça dans le checkout_process coté catalog, car c'est évidemment à ce moment ou les commandes sont enregistrées dans la BDD. Petit bémol tout de même, car la théorie veut que stocker la nom de la classe ne soit pas la meilleure solution, car rien ne dit que les modes de paiement soient toujours les mêmes pour une boutique, aujourd'hui comme dans 5 ou 10 ans tout comme hier. Un mode de paiement peu évoluer, son nom peut même changer au fil du temps, faut donc le savoir. Ici ça n'a pas une énorme importance à priori, ce n'est que pour une image, faudra juste faire en sorte de ne jamais la supprimer. -------------------- Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet. Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums Prés-Requis -> Les compétences requises pour réussir avec osCommerce Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com |
|
7 Jun 2009, 14:01
Message
#3
|
|
Ceinture marron OSC Groupe : Membres Messages : 1441 Inscrit : 24-April 03 Membre no 1102 |
Ah c'est aussi hardu que cela, en fait je pensait que je pouvait m'inspirer de ce code coté boutique, qui permet d'identifier le type de mode de paiement et d'afficher un icons ou autre:
Code <?php //NBen je rajoute ce qui suit pour affichage d'un logo SPPLUS if ($selection[$i]['id'] == 'cep') { echo tep_image($selection[$i]['icon'], $selection[$i]['module']); } ?> Ont pourrait envisager ceci: Code <?php //Afficher un logo pour Les chèques if ($selection[$i]['id'] == 'moneyorder') { echo tep_image(mon image); } ?> Mais dans l'admin je sais pas comment m'y prendre car la fonction $selection, je ne sais pas comment elle est construite. De plus çà fonctionne par id non ? à en croire ce bout de code ?: Code ($selection[$i]['id'] Mais dans orders.php c'est une autre histroire. -------------------- OSC 2.1.3 et MS2 (PHP Version 5.2.17)
|
|
7 Jun 2009, 19:25
Message
#4
|
|
2eme dan OSC Groupe : Membres VIP Messages : 3712 Inscrit : 11-April 07 Lieu : Ile de la Réunion Membre no 16487 |
Citation (polo) Ah c'est aussi hardu que cela, en fait je pensait que je pouvait m'inspirer de ce code coté boutique, qui permet d'identifier Je doute que tu puisse t'appuyer sur tout ça vu que tu n'a rien t'indiquant à quel module de paiement tu as affaire.Partant de là, le plus est serait donc d'enregistrer le nom de la classe, il y a que 2 choses à faire seulement : 1/ Rajouter le champ dans la table "orders" 2/ Rajouter le nom de la classe au moment de l'enregistrement de la commande, dans le checkout_process.php C'est pas l'Pérou, non ? Sachant que le nom de la classe peut être obtenu avec : $shipping['id']. Enfin, avec ce code tu obtiendras normalement son nom sous la forme : moneyorder_moneyorder (ou cep_cep) Il faut donc éliminer le doublon qu'il y a sur le nom, avec ce code : Code substr($shipping['id'], 0, strpos($shipping['id'], '_')); Dans le checkout process.php, suffit de rajouter un code du genre : (dans le $sql_data_array) Code ... code ... Théoriquement, c'est tout ce qu'il y a à faire.'payment_method' => $order->info['payment_method'], 'payment_class' => substr($shipping['id'], 0, strpos($shipping['id'], '_')), ... code etc ... A partir du moment où tu as le nom de la classe, et bien te reste plus qu'à l'exploiter pour afficher une image basée du même nom Faudra tout de même rajouter manuellement dans la BDD le nom en question à toutes les commandes effectuées précédemment. -------------------- Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet. Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums Prés-Requis -> Les compétences requises pour réussir avec osCommerce Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com |
|
7 Jun 2009, 20:14
Message
#5
|
|
Ceinture marron OSC Groupe : Membres Messages : 1441 Inscrit : 24-April 03 Membre no 1102 |
Ah je savais pas que l'ont pouvez utiliser $shipping['id']. qui est pour les frais de port ?? non ? pour le mode de paiement.
Sinon au lieu d'utiliser le nom du module dans la BDD et dans un soucis d'économie de place, serait il possible d'utiliser un numéro d'id plutôt .? genre 0= paiement par CB, "1"= paiement par chèque etc.... et rappeler ces numéros dans order, avec l'aide de switch par exemple pour afficher l'icon. Enfin je vais déjà assimiler tes conseils, te relire et essayer de faire çà. Merci -------------------- OSC 2.1.3 et MS2 (PHP Version 5.2.17)
|
|
7 Jun 2009, 20:34
Message
#6
|
|
2eme dan OSC Groupe : Membres VIP Messages : 3712 Inscrit : 11-April 07 Lieu : Ile de la Réunion Membre no 16487 |
Citation dans un soucis d'économie de place Ca serait une économie de bout d'chandelle Franchement, les noms des modules sont rarement très long, quelques caractères, rarement au-delà de 10, ça ne représente de quelques tous petits octects d'économiser à chaque fois, autant dire rien du tout. Personnellement j'en ferais rien, avoir son nom tel quel est l'idéal Optimiser sa BDD est une bonne démarche, mais faut pas trop pousser non plus, disons faut pas se tromper où il est bon de le faire, et là où c'est inutile. -------------------- Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet. Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums Prés-Requis -> Les compétences requises pour réussir avec osCommerce Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com |
|
7 Jun 2009, 20:48
Message
#7
|
|
2eme dan OSC Groupe : Membres VIP Messages : 3712 Inscrit : 11-April 07 Lieu : Ile de la Réunion Membre no 16487 |
Ah je savais pas que l'ont pouvez utiliser $shipping['id']. qui est pour les frais de port ?? non ? pour le mode de paiement Je me plante royalement, sorry Le $shipping, comme son nom l'indique c'est pour le module de livraison, mais pour le module de paiement, c'est $payment, évidemment De plus, cette variable est à utilisée telle quelle $payment tout simplement (il y a rien à faire de plus), sa valeur est le nom du module de paiement utilisée. Code à corriger ci-dessus -------------------- Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet. Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums Prés-Requis -> Les compétences requises pour réussir avec osCommerce Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com |
|
8 Jun 2009, 14:46
Message
#8
|
|
Ceinture marron OSC Groupe : Membres Messages : 1441 Inscrit : 24-April 03 Membre no 1102 |
edit: bon je regarde ta méthode pour voir...
Ce message a été modifié par polo - 8 Jun 2009, 15:11. -------------------- OSC 2.1.3 et MS2 (PHP Version 5.2.17)
|
|
12 Jun 2009, 23:32
Message
#9
|
|
Ceinture marron OSC Groupe : Membres Messages : 1441 Inscrit : 24-April 03 Membre no 1102 |
Bon j'ai laissé tombé , en fait j'ai réussi à résoudre mon problème apparemment , j'avais mal repris le nom du module, j'ai repris le nom à partir de la base SQL et non de mon fichier de localisation.
-------------------- OSC 2.1.3 et MS2 (PHP Version 5.2.17)
|
|
22 Aug 2009, 03:57
Message
#10
|
|
Ceinture blanche OSC Groupe : Membres Messages : 1 Inscrit : 22-August 09 Membre no 25989 |
Merci de votre solution
que des informations détaillées comparatif simulation assurance vie multisupport - simulation assurance vie ! Les sites de simulation assurance viecomparatif simulation assurance vie multisupport |
|
22 Aug 2009, 09:14
Message
#11
|
|
Ceinture bleue OSC Groupe : Membres Messages : 983 Inscrit : 8-April 08 Lieu : strasbourg Membre no 21429 |
Salut polo,
Je sais pas si tu as réussis depuis que tu as posé la question mais j'ai donné la réponse sur ce sujet Clique ici Pour mettre un petit logo correspondant au mode de paiement dans checkout_paiement.PHP Il n'y as rien de bien compliqué tout est expliqué dans le topic cité plus haut il suffit juste de faire les petit arrangement pour chaque mode de paiement. @+++ |
|
Version bas débit | Nous sommes le : 28th March 2024 - 19:10 |
Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |