anceze
Utilisateur open source-
Compteur de contenus
93 -
Inscrit(e) le
-
Dernière visite
Tout ce qui a été posté par anceze
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
[Bug report] lien dans dropdown menu panierBonjour;
J'ai testé ce bug avec une version non modifié des fichiers.
Si je met une option de taille a un produit; que je l'ajoute au panier, le lien dans le drop down menu de produit_detail, quand je clic l'icon panier, le lien s'affiche ainsi :
http://www.anceze.com/bordeauxdemo//achat/produit_details.php?id=1?sId=1
Il y a deux "?" au lieu d'un "?" et un "&"
Donc ca bug.
Je n'ai pas encore cherché comme le résoudre.
Bonne journée
- 1 réponse
- 1 605 vues
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Stock / Panier persoBonjour.
J'ai presque achevé la modification grâce à vous. :)
Il me reste à solution mon panier en fonction des mes stock un peu particulier.
Je ne cherche pas une solution adapté au système PEEL, juste un truc qui marche mais si pas propre et peu sécurisant.
Voir exemple en fin de message avec mon code pour faire varier les sélections d'option attributs entre eux.
Je pense coller une simple requête SQL dans le ou les bons bon fichier .php pour aller récupérer les produit en stock et quantité.
Seulement en base de donnée je dois savoir ce que je dois chercher.
Si dans phpmyadmin (ou autre gestionnaire de db) je veux savoir quel produit ce client a dans son panier.
Comment dois-*je construire une requête classique ?
SELECT ??? IN ??? WHERE ???
Exemple de débrouillardise sur les select :
Critère stock :
<select class="form-control" id="{$id_select_size}" name="taille" onchange=" variateur(); update_product_price{$save_suffix_id}();">Produits_detail (j'ai doublé la mise à jour du prix par sécurité)
function variateur() { if (document.getElementById('taille').value == 1 || document.getElementById('taille').value == 2) { document.getElementById(num1).options[1].disabled='disabled'; document.getElementById(num1).selectedIndex = 0; document.getElementById(num1).options[1].style.color = '#aaaaaa'; } else { document.getElementById(num1).options[1].disabled=false; document.getElementById(num1).options[1].style.color = '#000000'; } for (i=0;i<5;i++) { if (i == document.getElementById('taille').value) { document.getElementById(num2).options[i].disabled=false; if (document.getElementById(num2).selectedIndex != 0) { document.getElementById(num2).selectedIndex = i; } document.getElementById(num2).options[i].style.color = '#000000'; } else if (i !=0) { document.getElementById(num2).options[i].disabled='disabled'; document.getElementById(num2).options[i].style.color = '#aaaaaa'; } } update_product_price{$save_suffix_id}(); } </script>
Bonnes journées
Yann Anceze
- 3 réponses
- 1 351 vues
-
anceze a ajouté un message dans un sujet Affichage Zones d'expédition
C'est ce que je pensais.
Ca va être long.
Je le verrais au dernier moment.
C'est soit long soit imbuvable pour le client :(
MErci.
-
0
-
-
anceze a ajouté un message dans un sujet Module perso : stock d'option d'attribut dynamique : griser un select
Merci.
C'est fait.
-
0
-
-
anceze a ajouté un message dans un sujet Où Définir la quantité de produits par ligne ?
ok.MErci
Pour le order by ?
J'ai directement touché à
function params_affiche_produits
dans fonction.php
avec ça
$Links->OrderDefault = 'id'; $Links->SortDefault = 'DESC';
Bonne journée
-
0
-
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Où Définir la quantité de produits par ligne ?Bonjour.
Où définir la quantité de produits par ligne pour les nouveautés, promo etc sachant que pour moi actuellement elles s'affichent en page d'accueil. ?
J'aimerais le même visuel dans les nouveauté que les catégories.
J'aimerais aussi changer l'ordre d'affiche des produits dans les catégories et en page d’accueil dans les nouveautés.
Bonne journée
- 2 réponses
- 947 vues
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
[Résolu] Ne pas afficher les prix en page d'accueilBonjour.
Je voudrais n'afficher les prix que dans produit détail et pas en en page d'accueil, ni dans les catégories.
Y-a-t-il une solution simple ?
Ok c'est bon. Je ne cherchais pas dans le bon fichier.
Produits.tpl
<!-- DESACTIVER AFFICHAGE DU PRIX : {if empty($prod.check_critere_stock)}<div class="fc_prix">{if !empty($prod.on_estimate)}{$prod.on_estimate}{else}<span class="prix"> </span>{/if}</div>{/if} -->
Bonne journée
- 0 réponse
- 821 vues
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Affichage Zones d'expéditionBonjour.
Dans le panier PEEL afficher les zones d'expédition mais c'est parfaitement ingérable pour les clients de voir zone 1 zone 2 zone 3.
Surtout quand il est impossible de les nommer europe ou UE quand le transporteur prévoit des tarifs différents pour certains pays de l'UE.
Etc.
Y-a-t-il un moyen simple d'afficher directement les pays au lieu de zones ?
2 eme point
Est-il possible de désactiver une zone sans la supprimer ?
Bonne journée
- 4 réponses
- 1 444 vues
-
anceze a ajouté un message dans un sujet configurer Paypal : DESACTIVE
Merci.
Je suis le genre de type à ne pas voir les onglets :(
C'est pas la première fois que ça m'arrive.
Rassurez vous, j'ai un peu honte.
Bonnes journées
-
0
-
-
anceze a ajouté un message dans un sujet Changer la couleur des liens
ok J'ai rien dis.
C'était juste pas dans le même fichier css.
Si je n'ai pas fais n'importer quoi ;
li/css/bootstrap.css
Bonne journée
-
0
-
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Changer la couleur des liensBonjour.
Je ne trouve aucun outils pour configurer l'apparence.
Mon fond est presque de la même couleur que les liens, j'aimerai juste modifier la couleurs de liens.
Bonne journée
- 1 réponse
- 1 182 vues
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
configurer Paypal : DESACTIVEBonjour.
Je ne comprends pas comment configurer paypal.
Je n'ai rien eu à faire sur mon précédent site (solution ecommerce) hors mis entrer l'email paypal.
J'ai bien trois fois mon email de noté dans "Gérer les sites" -> "Configuration du site"
Le email est celui de mon compte paypal.
Pour test je les ai supprimé, et changé pour celui du support, validé, puis remis, idem.
Mais la page des moyens de paiement m'affiche toujours :
DESCATIVE : email du compte paypal (obligatoire sinon module inactif)
Dois-je suivre le tuto paypal en plus ?
https://www.paypal.com/businessprofile/mytools/apiaccess
Bonne journée
- 5 réponses
- 3 701 vues
-
anceze a ajouté un message dans un sujet Doublon de 'contact' pour candidature dans 'autre'
Merci.
Je vais essayer ça.
Bonnes journées
-
0
-
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Doublon de 'contact' pour candidature dans 'autre'Bonjour
Est-ce possible de faire une copier de "contact" dans la catégorie "autre".
Je veux y ajouter en plus 4 champs d'upload avec limitation de taille et d'extension.
Changement des nom de langes pour choix de sujet et numero de commande.
Même destinataire,
Ceci va clore la première partie du site.
Je poursuivrais plus tranquillement les stock attributs après cela.
Bonne journée
- 2 réponses
- 1 249 vues
-
anceze a ajouté un message dans un sujet DIssocier Description et attributs avec 1 seule option
Ok ca y est.
Pas facile de trouver le bon emplacement dans display product.
Trop haut ou trop bas et c'est pas bon.
Merci
-
0
-
-
anceze a ajouté un message dans un sujet Module perso : stock d'option d'attribut dynamique : griser un select
Je vais devoir me débrouiller "seul", je suis loin d'avoir les moyens financier adéquates (proche de zéro).
Pourquoi supprimer les "fonctions d'attribut selon le stock disponible".
Je suis en PEEL shopping donc je n'ai pas le module.
Je vais déjà essayer de récupérer les quantités.
Histoire de ne pas travailler en aveugle, est-ce qu'il y a un code permettant de faire une alert ou une popup, pour les codes php pour faire apparaitre une variable par exemple..
Car si je fais un classique <? echo "<script>alert ... Ca ne passe pas.
MErci
Bonne journée
-
0
-
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Module perso : stock d'option d'attribut dynamique : griser un selectBonjour.
J'ai déjà fais la création produit et la mise à jour des stock à la commande.
Je dois maintenant gérer le panier et le module d'ajout au panier.
Module d'ajout au panier : étape 1
L'attribut 1 me permet de choisir les options d'attribut 1, 2 et 3.
J'ai créé un stock pour chacune de ces options.
Seul cet attribut à des options avec stock.
Si le stock de cet option d'attribut est à zéro en comptant le panier, je veux retirer cette option du menu/select de l'attribut correspondant.
Je pensais au plus simple à l'évincé lors de l'affichage.
Je veux être certain de partir dans le bon sens, vers les bon fichiers, dans les bonnes fonctions.
Pourriez-vous me guidez à nouveau svp ?
Code d'exemple (qui n'a pas les bonne variables)
Problématique que je vais rencontrer ; je n'ai jamais rien compris aux paniers et aux sessions.
Les informations panier (produit en attente) sont elles en base de données ?
<?php // ma nouvelle table pour gérer les stock d'options $query = query(" SELECT attributs_id, produit_id, stock FROM peel_produits_attributs_stock WHERE produit_id =".$this_produit_id); // Récupération des stock pour chaque option. $attributs_stock=array(); while ($res = fetch_assoc($query)) { $attribut_id = $res['attributs_id']; $stock = $res['stock']; $attribut_stock[$attribut_id]=$stock; } // Par défaut 0 quantité en panier pour chaque attribut_stock de ce produit. $attributs_1_panier = 0; $attributs_2_panier = 0; $attributs_3_panier = 0; // Si panier non vide if (!empty($session_panier)) { // pour chaque insertion dans le panier foreach($session_panier as $key => $value) { // S'il s'agit du produit en cours if ($key['produit_id'] == $this_produit_id) { // Quelle quantité en attente dans le panier ? $panier_qté = $key['qte']; // Liste des attributs en panier pour ce produit $attributs_list = $key['attribut_list']; // Quel quantité attribut de stock pour ce produit en panier ? // On cumule si cet attributs_stock a été ajouté dans d'autres tailles par exemple. if (stripos($attributs_list, '1|1') == true){$attributs_1_panier = $attributs_1_panier + $panier_qté;} elseif (stripos($attributs_list, '1|2') == true){$attributs_2_panier = $attributs_2_panier + $panier_qté;} elseif (stripos($attributs_list, '1|3') == true){$attributs_3_panier = $attributs_3_panier + $panier_qté;} } } } // si quantité panier < à stock => l'option sera activé non grisée. $attributs=array(1=>'',2=>'',3=>''); if ($attribut_stock[1] - $attributs_1_panier < 1){$attributs[1] = ' disabled';} if ($attribut_stock[2] - $attributs_2_panier < 1){$attributs[2] = ' disabled';} if ($attribut_stock[2] - $attributs_2_panier < 1){$attributs[3] = ' disabled';} // PUIS DANS LA CONSTRUCTION DU SELECTION / OPTION foreach ($attributs as $key => $value) { if($this_attribut_id == 1 && $this_attribut_option == $key){$attribut_statut = $attributs[$value];} } // Juste après l'insertion de la value de l'option echo $attribut_statut; ?>
Ci dessous des explications facultatives
Explication de ma gestion des stock avec une parabole
1 produit = 40 unité et 1 gadget dans un carton.
Vente du carton entier (attribut 1) => vide les stock de tous les attributs.
Vente du gadget (attribut 2) => stock gadget = 0 ; stock carton = 0 car il a été entamé ; stock unités non impacté
Vente d'une unité normale (attribut 3) => stock unité -1 ; stock carton = 0 car il a été entamé ; stock gadget non impacté
Nouvelle table : peel_produits_attributs_stock : ok
id = sa seul utilité est de pouvoir modifier les stocks sous phpmyadmin
produit_id = l'id du produit, pour chaque prduit
Attribut_id = l'option d' attribut ayant un stock
Stock = le stock pour chaque attribut_id.
Chez moi ca donne ceci :
id produit_id attribut_id stock Modifier Copier Effacer1111 Modifier Copier Effacer2121 Modifier Copier Effacer31340 Modifier Copier Effacer4711 Modifier Copier Effacer5721 Modifier Copier Effacer67340
C'est donc un code très perso car je dois toujours conserver ces attributs_id.
Création de produit : ok
J'ai créer un module pour générée un produit selon un modèle donné.
Ca m'ajoute automatiquement un produit avec les attributs et les options désirées.
J'ai inclue l'ajout des insertion dans cette nouvelle table avec les valeur de stock par défaut.
Mise à jour de stock : ok
J'ai ajouté la fonction jointe en fin de message dans lib/fonctions/order.php
Je la lance à la fin de create_or_update_order avant le return
Merci grandement pour votre aide.
Je vous souhaite d'agréables journées.
- 4 réponses
- 2 111 vues
-
anceze a ajouté un message dans un sujet Ajouter un code à la gestion d'ajout au panier
Voilà.
Ca va bien simplifier les choses.
Je vous remercie beaucoup, sans votre aide j'aurai eu mal aux dents.
Je passe au problème dans un nouveau post.
A moins que vous préfériez tout faire à la suite sur le même post.
Merci !
Bonnes journées
-
0
-
-
anceze a ajouté un message dans un sujet Ajouter un code à la gestion d'ajout au panier
Merci.
C'est vraiment une partie compliqué pour moi.
Pour simplifier je dois supprimer la visibilité de l'option de quantité.
Mes produits n'en ont pas besoin, au contraire même, c'est mieux sans.
Je dois retirer le visuel de la possibilité de changer les quantité dans produit détail et dans le panier.
- Je ne sais pas où.
Ensuite ... on verra
Bonnes journées
-
0
-
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Ajouter un code à la gestion d'ajout au panierBonjour;
Je suis obligé de faire mon propre module de stock pour deux raisons.
J'ai pas d'argent, et mes stocks dépendent des options d'attribut perso en plus de dépendre les uns des autres.
C'est compliqué mais là n'est pas le problème.
J'ai déjà fais la gestion de création produit et celle finalisation de commande.
Reste le panier, ca touche à la session et là je n'y connais rien.
Au plus simple :
1 - Il me semblait qu'il y avait une fonction en backoffice pour désactiver l'affichage du choix de quantités à commandée. non ? Je l'ai perdue, elle est où ?
2 - Vers quel fichier et fonction dois-je regarder pour vérifier si la quantité demandé par le client est dispo dans ma nouvelle table perso ?.
2b - Je pensais faire un truc du genre : foreach(produit_id) { verification complexe perso { Si (panier < dispo) {panier = dispo}. Sans même coder une popup d'erreur pour reste simple.
Mais en plus compliqué car il peut avoir en panier 2 produits dont le stock est le même mais avec une différence d'option de produit, et autres spécificités de mes produits.
Bonne journée
Yann Anceze
- 4 réponses
- 1 210 vues
-
anceze a ajouté un message dans un sujet DIssocier Description et attributs avec 1 seule option
Je retente ... !
(persévérant)
Merci.
-
0
-
-
anceze a ajouté un message dans un sujet Modifier insertion peel_commandes en BDD
Encore un souci de mise en cache ?
Ok c'est bon. Ca finit par obéir.
Merci
-
0
-
-
anceze a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Modifier insertion peel_commandes en BDDBonjour.
Je cherche à quel endroit se passe l'insertion d'une nouvelle ligne dans les tables peel_commandes et peel_commandes_articles.
Je veux récupérer le commande_id de peel_commandes juste après l'insertion d'une nouvelle commande.
J'avais pensé à lib/fonctions/order.php
avec function create_or_update_order($order_infos, $articles_array)
Mais il semble que je me trompe. Si je vide la fonction ça ne change rien.
Bonne journée
- 2 réponses
- 1 149 vues
-
anceze a ajouté un message dans un sujet DIssocier Description et attributs avec 1 seule option
Bonjour
La page blanche n'est pas le problème.
C'est en général un souci simple de mauvaise syntaxe
Le souci c'est que même le test le plus simple ne passe pas la fonction product.
TEST FONCTIONNEL mais inutilisable
/class/product.php:
var $tototest = 'test de toto';
/fonctions/display_product.php
$tpl->assign('tototest', $product_object->tototest);
/smarty/product_details.html.tpl
<hr>test : {$tototest}
TEST FONCTIONNEL 2 exploitable mais pas optimal car eje vais devoir doubler les requetes sql et les codes
/class/product.php:
var $tototest = 'test de toto'; function mmontest() { $tototest .= 'test de toto'; return $tototest; }
/class/product.php: après function Product(... {
$tpl->assign('tototest', $product_object->mmontest());
/smarty/product_details.html.tpl
<hr>test 8: {$tototest}
TEST DYSFONCTIONNEL
/class/product.php:
var $tototest = null;
/class/product.php: après et dans function Product(... {
$tototest .= 'test 2 de toto';
/fonctions/display_product.php
$tpl->assign('tototest', $product_object->tototest);
/smarty/product_details.html.tpl
<hr>test 4: {$tototest}
SOLUTION non optimale (c'est pas du pure peel) mais fonctionnelle :
Dans /class/product.php
function ma_desc_solo() { if (empty($lang)) { $lang = $_SESSION['session_langue']; } $id = intval($this->id); $query = query(" SELECT description_".$lang." FROM peel_produits WHERE id =".$id); if ($res = fetch_assoc($query)) { $description_seule = $res['description_'.$lang]; } return $description_seule;
dans /focntion/display_product.php
$tpl->assign('description_seule', $product_object->ma_desc_solo());
Idem en plus complexe pour les options uniques
-
0
-
-
anceze a ajouté un message dans un sujet DIssocier Description et attributs avec 1 seule option
Je dois avouer que consulter les logs n'est pas une mauvaise idée.
Si ca peut m'éviter de vous embêter avec mes soucis de codes perso.
On les trouve où ? Dans peel ou dans mon navigateur ?
Car là je n'arrive à rien
L'ajoute de "product_object->" me donne une page blanche à partir du moment j'appel la attribut_options_unique
Pour l'autre rien ne s'affiche mais la page ne bug pas.
Je suppose qu'il faut l'ajouter dans lib/fonctins/display_product.php
Et ne pas l'afficher dans lib/class/product.php
PETIT TEST
{if !empty($product_object->description_seule)}<div> PLEIN </div>{/if}
{if empty($product_object->description_seule)}<div> VIDE </div>{/if}
{if !empty($description_seule)}<div> PLEIN 2</div>{/if}
{if empty($description_seule)}<div> VIDE 2</div>{/if}
Ca me répond Cide et Vide 2
CE qui ets dans /class/ n'en sort pas, par contre si je crée une variable dans /fonctions/ je peux l'utiliser. malheureusement les contenus sont dans /class/
Je continu de chercher par là
J'ai corrigé le code précédent dans ce post avec ces nouveaux ajustements et d'autres..
J'y ai passé la nuit.
Bonnes journées
-
0
-