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

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Poids toujours visible dans la commande
laurentgo
posté 17 Aug 2017, 14:40
Message #1


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023



Bonjour à tous

Je n'ai pas trouvé sur le forum sad.gif

J'utilise le module colissimo en Ms2.2

Requête: Comment faire apparaitre le poids (de la commande complète) lorsque celle ci est Franco de port ?

Après réflexion je me suis aperçu que dans le module/total commande/expédition de l'admin, si je met le port gratuit à 100€, le poids de mon colis disparait.

j'en ai déduit, que "total commande" se base sur le montant de la commande (en€) et lorsque le montant est atteint (comme la tarte....), il passe par dessu le module colissimo qui lui m'affiche le poids. Donc le poids ne figure plus.

Question comment faire "une passerelle" entre les deux afin que même en franco le poids de la commande apparaisse sur la commande.

d'avance merci


--------------------
os commerce 2.2ms2

Go to the top of the page
 
Bonbec
posté 17 Aug 2017, 17:02
Message #2


Ceinture bleue OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1292
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Bonjour,

Ma version MS2.2 est tellement modifiée que je ne sais plus si ce que je vais indiquer est d'origine ou pas ...

Dans catalog/checkout_shipping.php, un peu avant les lignes :
Code
// load all enabled shipping modules
  require(DIR_WS_CLASSES . 'shipping.php');
  $shipping_modules = new shipping;

J'ai ceci :
Code
$total_weight = $cart->show_weight();

Cela récupère le poids.


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
laurentgo
posté 18 Aug 2017, 09:13
Message #3


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023



Bonjour

Merci Bonbec.

Je l'ai trouvé aussi :

Code
  $total_weight = $cart->show_weight();
   $total_count = $cart->count_contents();





Mais comme je l'expliquais, apparemment (mais je peux me tromper) il doit il y avoir du code dans le module:

"total commande" (dans lequel "expedition" se trouve pour choisir le port gratuit), qui une fois le montant en € est atteint, viens en amont invalidé ces lignes de code.

ou

une fois le module colissimo mis en place (dans mon cas) celui ci indique le poids, et dans ce cas aussi le module "total commande" viens supplanté le poids.

Ma vision de la chose, on a deux variantes bien différentes une en kgs et l'autre en Euro. Et quelque part une fois le montant en euro atteint une ligne de code dit : "si 100€ atteint, ne plus afficher le poids".

Moi j'aimerais plutôt la version " afficher toujours le poids". Donc apparemment ce code existait déjà (celui de ci dessus dans checkout_shipping), faudrait que je sache où, et quoi, chercher comme code pour passer outre, ou supprimer le fait que l'un prend le dessus sur l'autre.

Qu'en pensez vous ??









--------------------
os commerce 2.2ms2

Go to the top of the page
 
laurentgo
posté 18 Aug 2017, 13:51
Message #4


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023






blink.gif Pourquoi pas quelques lignes de code supplémentaires qui n'auraient rien n'à voir avec rien.

Juste à la confirmation de la commande, un code qui additionne le poids des articles en horizontale puis en verticale ??




--------------------
os commerce 2.2ms2

Go to the top of the page
 
Bonbec
posté 19 Aug 2017, 07:47
Message #5


Ceinture bleue OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1292
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Re,

J'aurais dû préciser un peu plus ma pensée. vu que
Code
$total_weight = $cart->show_weight();

récupère le poids, pour le faire afficher, on peut écrire
Code
echo $cart->show_weight();


PS : pas compris :
Citation
un code qui additionne le poids des articles en horizontale puis en verticale

$cart->show_weight(); donne le poids total du panier, donc le poids de tous les articles additionnés.


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
laurentgo
posté 30 Aug 2017, 15:57
Message #6


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023



Merci BonbecJ'essai ça dés que je rentre, et je post. smile.gif




--------------------
os commerce 2.2ms2

Go to the top of the page
 
laurentgo
posté 11 Sep 2017, 14:38
Message #7


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023



Bonjour

Bon et bien apres de multiples essais je me suis cassé les dents...

donc avec ce simple code:

Code
<tr>
<td class="main" align="right"><?php echo $cart->show_weight(); ?></td>
</tr>


dans /checkout_confirmation.php , j'ai effectivement le poids total qui s'affiche.

Mais... pck il y a un mais

Ce n'est pas là que j'en ai besoin biggrin.gif

C'est dans l'admin, plus exactement admin/orders.php . que j'en ai besoin.

J'ai fait de multiples essais

j'ai bien trouvé ou se trouvait le total de la commande:

Code
          <tr>
             <td align="right" colspan="15"><table border="0" cellspacing="0" cellpadding="2">
<?php
     for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) {
       echo '              <tr>' . "\n" .
            '                <td align="right" class="smallText">' . $order->totals[$i]['title'] . '</td>' . "\n" .
            '                <td align="right" class="smallText">' . $order->totals[$i]['text'] . '</td>' . "\n" .
            '              </tr>' . "\n";
     }
?>
             </table></td>
           </tr>
     </table></td>
       </tr>





J'ai compris en lisant ce code que cela fait appel (apparemment) au module "order_total", mais je n'arrive pas à inclure le bon code en partant de : <?php echo $cart->show_weight(); ?>

J'ai éssayé comme dans "checkout confirmation.php d'inclure un <td>un peu partout, mais j'ai compris aussi que cette page "order" dans l'admin est le résultat d'une multitude de requêtes...

Tout ça ce sont mes réflexions j'aimerais bien y arriver, mais un peu de lumiere à ma lanterne serait la bienvenue.
























--------------------
os commerce 2.2ms2

Go to the top of the page
 
Bonbec
posté 12 Sep 2017, 00:00
Message #8


Ceinture bleue OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1292
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Ah OK, j'avais pas compris que c'était pour l'admin.

Il y a une solution mais elle est un peu lourde, donc à tester en local.

1) Dans la table orders, ajouter un champ total_weight et le mettre en decimal(5,2)

2) Dans catalog/checkout_process, trouver :
Code
                          'currency_value' => $order->info['currency_value']);
  tep_db_perform(TABLE_ORDERS, $sql_data_array);

et remplacer par :
Code
                          'currency_value' => $order->info['currency_value'],
                          'total_weight' => $cart->show_weight());
  tep_db_perform(TABLE_ORDERS, $sql_data_array);

Vers la fin du fichier, à la suite de tous les tep_session_unregister ajouter :
Code
  tep_session_unregister('total_weight');


3) Dans admin/includes/classes/order.php
Dans le $order_query de function query($order_id), ajouter , total_weight (bien mettre la virgule) juste avant le from " . TABLE_ORDERS
Puis trouver :
Code
$this->info = array('currency' => $order['currency'],
                          'currency_value' => $order['currency_value'],
                          'payment_method' => $order['payment_method'],
                          'cc_type' => $order['cc_type'],
                          'cc_owner' => $order['cc_owner'],
                          'cc_number' => $order['cc_number'],
                          'cc_expires' => $order['cc_expires'],
                          'date_purchased' => $order['date_purchased'],
                          'orders_status' => $order['orders_status'],
                          'last_modified' => $order['last_modified']);

Modifier en :
Code
$this->info = array('currency' => $order['currency'],
                          'currency_value' => $order['currency_value'],
                          'payment_method' => $order['payment_method'],
                          'cc_type' => $order['cc_type'],
                          'cc_owner' => $order['cc_owner'],
                          'cc_number' => $order['cc_number'],
                          'cc_expires' => $order['cc_expires'],
                          'date_purchased' => $order['date_purchased'],
                          'orders_status' => $order['orders_status'],
                          'last_modified' => $order['last_modified'],
              'total_weight' => $order['total_weight']);


4) Dans contrib/orders, il suffit d'utiliser <?php echo $order->info['total_weight'];?> pour faire afficher le poids total.


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
laurentgo
posté 12 Sep 2017, 13:52
Message #9


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023






Trop trop cool !!!

j'ai bien lu, et tout compris, et tout trouvé.

sauf au tout début vous écrivez:

"1) Dans la table orders, ajouter un champ total_weight et le mettre en decimal(5,2)"

je pense comprendre que dans admin/orders.php je rajoute une ligne <tr> avec un <td> et tout afin que la valeur du poids apparaisse (enfin je pense que c'est cela....)

mais dois je le rajouter dans un code existant ? et si c'est du php sous quelle forme ? là ça dépasse ma compétence biggrin.gif

On y est, je suis trop content smile.gif

encore merci pour le temps passé







--------------------
os commerce 2.2ms2

Go to the top of the page
 
Bonbec
posté 12 Sep 2017, 14:26
Message #10


Ceinture bleue OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1292
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Re,

Pour le 1)
Vu que je suis dans mon atelier de fabrication, je n'ai pas accès à mon ordi qui a PhpMyAdmin pour dire comment faire la manip.
De mémoire, il faut donc se servir de PhpMyAdmin, aller dans la BDD, ouvrir la table orders puis onglet structure
Sous la liste des champs, il y a une ligne avec des choses à cocher pour ajouter un nouveau champ.
Moi je l'ai ajouté en fin de table.
Nom : total_weight
type : decimal
taille/valeur : 5,2
défaut : aucune

Pour le code à insérer dans la page, ce sera dans quelques minutes, ma machine couine, elle a fini son job, faut que je la débarrasse et lance une autre fabrication.


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
laurentgo
posté 12 Sep 2017, 14:59
Message #11


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023






ah!!!, ok c'est dans la base sql !!!

mon ciel ténébreux, s'éclairci biggrin.gif . Prenez votre temps, vu depuis le temps que je bataille.... en tout cas merci






--------------------
os commerce 2.2ms2

Go to the top of the page
 
Bonbec
posté 12 Sep 2017, 16:31
Message #12


Ceinture bleue OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1292
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Re,
Citation (laurentgo @ 11 Sep 2017, 15:38) *
... j'ai bien trouvé ou se trouvait le total de la commande:

Code
          <tr>
             <td align="right" colspan="15"><table border="0" cellspacing="0" cellpadding="2">
<?php
     for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) {
       echo '              <tr>' . "\n" .
            '                <td align="right" class="smallText">' . $order->totals[$i]['title'] . '</td>' . "\n" .
            '                <td align="right" class="smallText">' . $order->totals[$i]['text'] . '</td>' . "\n" .
            '              </tr>' . "\n";
     }
?>
             </table></td>
           </tr>
     </table></td>
       </tr>


Pour afficher le poids juste sous la portion de code que vous aviez donné plus haut, voilà ce qu'il faut faire :
Code
          <tr>
             <td align="right" colspan="15"><table border="0" cellspacing="0" cellpadding="2">
<?php
     for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) {
       echo '              <tr>' . "\n" .
            '                <td align="right" class="smallText">' . $order->totals[$i]['title'] . '</td>' . "\n" .
            '                <td align="right" class="smallText">' . $order->totals[$i]['text'] . '</td>' . "\n" .
            '              </tr>' . "\n";
     }
?>
             </table></td>
           </tr>
            <tr>
                  <td align="right" colspan="15"><?php echo TABLE_HEADING_WEIGHT . ' : ' . $order->info['total_weight'];?></td>
        </tr>
     </table></td>
       </tr>



--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
laurentgo
posté 14 Sep 2017, 14:43
Message #13


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023



Bonjour

j'ai étudié ma base sql

1/ tout en bas de la table orders, j'ai: "currency_value", qui est le seul de la liste à être de type "decimal".

je l'ai ouvert pour "voir".

2/En haut de la table order les colonnes sont "champ" type" interclassement" etc....

J'ai voulu inserer 1 champ nommé "total_weight', et lors de la création il faut que je selectionne les "actions", et là

, et bien je coince wacko.gif qu'est ce que je dois coché ou décocher ????











--------------------
os commerce 2.2ms2

Go to the top of the page
 
Bonbec
posté 14 Sep 2017, 22:53
Message #14


Ceinture bleue OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1292
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Bonsoir,

Dans mon PhpMyAdmin, les "actions" ne sont pas obligatoires lors de la création d'un nouveau champs.
Asseyez ceci dans PhpMyAdmin :
Code
ALTER TABLE `orders` ADD `total_weight` DECIMAL(5,2) NOT NULL;


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
laurentgo
posté Hier, 13:46
Message #15


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 135
Inscrit : 20-September 08
Lieu : vaucluse
Membre no 23023



Bonjour

Trop cool cela fonctionne, mais le poids reste à zero.... huh.gif



Même après une simulation tout est ok, mais ça reste à zéro

Ce message a été modifié par laurentgo - Aujourd'hui, 08:58.


--------------------
os commerce 2.2ms2

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 September 2017 - 10:05
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)