Aquarelle

Utilisateur open source
  • Compteur de contenus

    153
  • Inscrit(e) le

  • Dernière visite


Tout ce qui a été posté par Aquarelle

  1. Aquarelle a ajouté un message dans un sujet  Fatal error   

    ce passage vers ligne 107

    if (!isset($catid)) { $catid = 0; } $frm['parent'] = array($catid); construit_menu_arborescent_cat($categorie_options, $frm['parent']); echo $categorie_options;
    • 0
  2. Aquarelle a ajouté un message dans un sujet  Fatal error   

    je pense que cette image invisible sert à décaler la sous catégorie par rapport à la catégorie, dans le menu arborescent
    Au niveau de modele/haut.php t'as rien touché sur la partie" affichage menu arborescent " ;) ;)
    Quand tu crées une 2eme cat tu l'as crée pas sur l'autre ?
    • 0
  3. Aquarelle a ajouté un message dans un sujet  Fatal error   

    actuellement as tu des catégories, je n'en voie aucune d'affichée
    • 0
  4. Aquarelle a ajouté un message dans un sujet  Fatal error   

    cette image est un petit carré blanc
    • 0
  5. Aquarelle a ajouté un message dans un sujet  Fatal error   

    Willy, il y a ça

    $sortie_cat .= "<img src=\"$wwwroot/images/mnu_empty.gif\" border=\"0\" alt=\"\" />";
    • 0
  6. Aquarelle a ajouté un message dans un sujet  Fatal error   

    la ligne 304 correspond à la construction du menu arborescent des catégories
    *As tu bricolé les fichiers ?
    *Est ce un nouveau site ?
    *As tu une URL
    • 0
  7. Aquarelle a ajouté un message dans un sujet  Fatal error   

    ton message d'erreur correspond à la "function construit_menu_arborescent_cat"
    • 0
  8. Aquarelle a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne   

    Voila ma gestion de stock
    Merci à Willy, Jcdhl, Atila-diffusion et Vidubz001 pour leur précieuse collaboration.

    LIbre à vous de l'utiliser. Le principe de cette gestion est de gérer sur la même page tous les articles, ou de gérer sur la fiche produit.
    Avant de commancer faites des sauvegardes de vos fichiers.

    --Créez un champ "stock" dans la table "peel_produits" (type int(5), attributs UNSIGNED,Null Non.
    Dans le fichier administrer/modeles/haut.php, rajouter la ligne

    <a href="<?php echo $wwwroot?>/administrer/stock.php">Gérer les stocks</a> Dans le répertoire administrer mettez le fichier "stock.php"ci-dessous <?php include("../configuration.inc.php"); necessite_identification(); necessite_priv("admin"); $DOC_TITLE = "Gérer les stocks"; include("modeles/haut.php"); ?> <?php if ($_POST["submit_ajouter"]) { $id=$_POST["temoin"]; $qty=$_POST["ajouter_".$id]; mysql_query("UPDATE peel_produits SET stock=stock+$qty WHERE id='$id'"); } if ($_POST["submit_supprimer"]) { $id=$_POST["temoin"]; $qty=$_POST["supprimer_".$id]; mysql_query("UPDATE peel_produits SET stock=stock-$qty WHERE id='$id'"); } if (!isset($tab_error)) { $tab_error=array(); } ?> <div align="center"><font style="font-size:13px"><b>Gestion des Stocks </b></font> <br><br> <?php $result_peel_produits=mysql_fetch_row(mysql_query("SELECT COUNT(id) FROM peel_produits")); if ($result_peel_produits[0]==0) { ?> <div align="center">Aucun produit pour le moment, gestion des stocks fermée !</div> <?php } else { ?> <form style="margin:Opx" method="post" action="#" name="form_stock"> <table align="center" cellpadding="4" cellspacing="1" border="0"> <tr bgcolor="#666666"> <td align="left" style="color:#FFFFFF">Apercu</td> <td align="left" style="color:#FFFFFF">Produit</td> <td align="left" style="color:#FFFFFF">Stock</td> </tr> <?php $cpt=0; $query_stock = mysql_query("SELECT * FROM peel_produits"); while ($result_peel_produits = mysql_fetch_assoc($query_stock)) { if ($cpt%2==0) { $bgcolor="CCCCCC"; } else { $bgcolor="DEDEDE"; } ?> <tr bgcolor="<?=$bgcolor;?>"> <td> <img src="<?php echo $repertoire_images?>/<?php echo $result_peel_produits['image1'] ?>" valign="top" width="150" alt="" /></td> <td style="color:000000; font-size:14px" align="left" width="250" nowrap><b><?php echo $result_peel_produits["nom"];?></b> </td> <td align="left"> <font style="font-size:13px"><b>En stock:</b> <? if ($result_peel_produits["stock"]==0) { ?><font color="#FF0000"><? } ?><?php echo $result_peel_produits["stock"];?><? if ($result_peel_produits["stock"]==0) { ?></font><? } ?></font><br><br> Ajouter:     <input type="text" value="1" name="ajouter_<?php echo $result_peel_produits["id"];?>">    <input type="submit" value="ok" name="submit_ajouter" onClick="document.getElementById('temoin').value='<?php echo $result_peel_produits["id"];?>'"><br> Supprimer: <input type="text" value="1" name="supprimer_<?php echo $result_peel_produits["id"];?>">   <input type="submit" value="ok" name="submit_supprimer" onClick="if (this.value><?php echo $result_peel_produits["stock"];?>) { alert('Vous ne pouvez pas supprimer plus que vous n\'avez en stock !'); return false; } else { document.getElementById('temoin').value='<?php echo $result_peel_produits["id"];?>'; }"> </td> </tr> <?php $cpt++; } ?> </table> <input type="hidden" name="temoin" value="0"> </form> <? } ?> <br> A ce stade vous avez dans le backoffice un lien "Gérer les stocks"que vous pouvez utiliser pour obtenir ceci Bon c'est tout pour ce soir, je vais préparer la suite. Finalement je continu la suite Dans index.php vers lignes 36 environ, rajouter dans le select: stock vers lignes 92 modifiez le formulaire comme ceci pour afficher le stock dans la liste déroulante <form method="post" action="<?php echo $wwwroot?>/achat/caddie_ajout.php" name="ajout<?php echo $prod['id'] ?>"> <input type="hidden" name="stock" value="<? echo $prod['stock']; ?>"> <span class="impression" > <? if ($prod['stock']>0){ ?> Quantité : <select name="qte" class="formulaire1"> <?php // Affiche la quantité en stock $i=1; while ($i<=$prod['stock']) { echo "<option value=\"$i\">$i</option>"; $i++; } } ?> </select> Dans achat/modeles/produit_details.php vers lignes 130 faire la même modif Dans achat/index.php vers lignes 130 même modif et vers lignes 74 rajouter dans le select p.stock Dans achat/produit_details.php versligne 48 dans le select rajouter p.stock J'espére n'avoir rien oublié Un petit probléme à résoudre.L'on peut commander plus que le stock. Donc pour corriger ce probméme faites ceci: Dans le fichier lib/class/caddie.php ligne 23 remplacez la fonction ajout par celleci function ajout(&$produitid, $quantite,$stock) { /* Ajoute un article au caddie et met à jour le montant total */ if (isset($produitid)) { if (! isset($this->articles[$produitid])) { $this->articles[$produitid] = 'O'; } $this->articles[$produitid] += $quantite; if ($this->articles[$produitid]>$stock) { $this->articles[$produitid]=$stock; } } } Dans fichier achat/caddie_ajout.php on ajoute $_REQUEST['stock'] <?php include("../configuration.inc.php"); $_SESSION['caddie']->ajout($_REQUEST['id'], $_REQUEST['qte'], $_REQUEST['stock']); $_SESSION['caddie']->nettoie(); $_SESSION['caddie']->recalc_total(); $HTTP_REFERER = $_SERVER['HTTP_REFERER']; if (! empty($HTTP_REFERER)) { header("Location: $HTTP_REFERER"); } else { header("Location: $wwwroot/index.php"); } ?> Je peux donc tester lors de l'ajout si la quantité voulue n'est pas supérieure à la quantité disponible. Dans fichier achat/modeles/caddie.php, il faut chercher la ligne : <input type="text" size="3" name="quantite[]" value="<?php echo $quantite?>" /> Et la remplacer par : <select name="quantite[]" class="formulaire1"> <?php // Affiche la quantité en stock $i=1; while ($i<=$prod['stock']) { echo "<option value=\"$i\""; if ($i==$quantite) {echo" selected";} echo " >$i</option>"; $i++; } ?> </select> De cette façon, on a une liste déroulante avec la quantité en stock. La condition sert à sélectionner la quantité qu'on a ajouté. Il ne faut pas oublier de modifier la fonction "recupere_articles_caddie" dans le fichier lib/fonctions/fonctions.php vers ligne 414 pour avoir le stock disponible. rajoutez "stock" dans le select $requete = "SELECT id, reference, nom, promotion, prix, tva, stock FROM peel_produits WHERE id IN ($in_clause)"; ahhhhhhhhh j'oubliais le plus important: mettre à jour les stocks au moment de la commande et si stock = 0, alerte émail et le produit n'est plus en ligne. Dans lib/fonctions/fonctions.php dans function cree_commande à la fin juste entre mysql_query($requete); et return $commandeid; insérez le code suivant $st = mysql_fetch_array(mysql_query("SELECT stock FROM peel_produits WHERE id = '".$article['id']."'")); $stock = $st['stock'] - $_SESSION['caddie']->articles[$article['id']]; if ($stock >= 0) { $stock_à_update = $stock; } else { $stock_à_update = 0; } if ($stock <= 0) { // Mail à l'adresse de l'admin pour recharger le stock $Stock_a_zero = "Attention: Le produit '".addslashes($article['nom'])."' n'as plus de stock"; mail($support, "Alerte Stock", $Stock_a_zero, "FROM:$support"); // on fera ensuite une propriété en ligne ou non quand pas en stock $requete_non_online = "UPDATE peel_produits SET etat = 0 WHERE id = '".$article['id']."'"; mysql_query($requete_non_online); } $requete_stock = "UPDATE peel_produits SET stock = $stock_à_update WHERE id = '".$article['id']."'"; mysql_query($requete_stock); } } } A ce stade on gére le stock sur une page à part. On peut rajouter une gestion sur la fiche produit. Ci-joint les modifications dans administrer/produits.php pour le stock à partir des fiches produits Ajouter ce qui suit vers ligne 348 <tr> <td class="normal">Quantité en stock:</td> <td class="normal"> <input type="texte" name="stock" value="<?php echo vb($frm['stock']) ?>" style="width: 60%" class="formulaire1" /> </td> </tr> Puis Modifier la fonction insere_produit par valide($frm['on_special']); valide($frm['etat']); $nom = addSlashes($frm['nom']); $description = addSlashes($frm['description']); $descriptif = addSlashes($frm['descriptif']); /*ajoute le produit dans la table produits */ $qid = mysql_query(" INSERT INTO peel_produits ( reference , nom , description , prix , descriptif , image1 , image2 , image3 , image4 , pdf , lang , promotion , stock , tva , etat , date_insere , date_maj , on_special) VALUES ( '$frm[reference]' , '$nom' , '$description' , '$frm[prix]' , '$descriptif' , '$img1' , '$img2' , '$img3' , '$img4' , '$pdf' , 'fr' , '$frm[promotion]' , '$frm[stock]' , '$frm[tva]' , '$frm[etat]' , now() , now() , '$frm[on_special]') "); Et modifier la fonction maj_produit par valide($frm['on_special']); $nom = addSlashes($frm['nom']); $description = addSlashes($frm['description']); $descriptif = addSlashes($frm['descriptif']); /* Met à jour la table produits */ $qid = mysql_query(" UPDATE peel_produits SET reference = '$frm[reference]' ,nom = '$nom' ,description = '$description' ,prix = '$frm[prix]' ,descriptif = '$descriptif' ,image1 = '$img1' ,image2 = '$img2' ,image3 = '$img3' ,image4 = '$img4' ,pdf = '$pdf' ,lang = 'fr' ,promotion = '$frm[promotion]' ,stock = '$frm[stock]' ,tva = '$frm[tva]' ,etat = '$frm[etat]' ,date_maj = now() ,on_special = '$frm[on_special]' WHERE id = $id "); A partir de là on peut gérer la quantité en stock dans les deux pages (produits et stock) Notre ami Castalibre, nous donne un script pour mettre à jour le stock si la commande est annulée Dans le fichier administrer/commandes.php, on peut remplacer la fonction efface commande par celle ci : function efface_commande($id) { /* Efface la commande dont le n° est $id */ global $wwwroot; $articles_commande=mysql_query("select * from peel_commandes_articles where commande_id='$id'"); $nombre_articles=mysql_num_rows($articles_commande); for($i=1;$i<=$nombre_articles;$i++) { $fiche=mysql_fetch_object($articles_commande); $produit=$fiche->produit_id; $quantite=$fiche->quantite; $article_maj=mysql_query("update peel_produits set stock=stock+$quantite where id='$produit'"); } $efface_commandes = mysql_query("DELETE FROM peel_commandes WHERE id = '$id'"); $efface_commandes_articles = mysql_query("DELETE FROM peel_commandes_articles WHERE commande_id = '$id'"); include("modeles/commande_efface.php"); } Si le script au moment de la commande met l'article "hors ligne" si stock=0, il faut remettre cet article en ligne puisque stock positif // on remet le produit en ligne quand stock positif $requete_online = "UPDATE peel_produits SET etat =1 WHERE id = '".$produit."'"; mysql_query($requete_online);
    • 78 réponses
    • 76 818 vues
  9. Aquarelle a ajouté un message dans un sujet  je n ai plus d image qui s affiche   

    Peut être un probléme de chemin pour tes répertoires ;)
    • 0
  10. Aquarelle a ajouté un message dans un sujet  Voila ma gestion de stock   

    J'ai essayé dans le formulaire où il y a les 3 statuts de la commande mais l'update agit quelque soit le statut
    • 0
  11. Aquarelle a ajouté un message dans un sujet  Voila ma gestion de stock   

    le code du dessus c'est quand on supprime la commande.
    Sinon le détail commande a 3 statuts
    1*attente réglement
    2*réglée
    3*annulée
    dans le 3* cas on pourrait remettre le stock a jour
    • 0
  12. Aquarelle a ajouté un message dans un sujet  Voila ma gestion de stock   


    reste =>commande annulée=>update=>stock ;) ;)
    • 0
  13. Aquarelle a ajouté un message dans un sujet  Voila ma gestion de stock   

    Bravo, si le script au moment de la commande met l'article "hors ligne" si stock=0, il faut remettre cet article en ligne puisque stock positif // on remet le produit en ligne quand stock positif $requete_online = "UPDATE peel_produits SET etat =1 WHERE id = '".$produit."'"; mysql_query($requete_online);
    ;)
    • 0
  14. Aquarelle a ajouté un message dans un sujet  Proposition de correctif pour 2.9.3   


    Il doit avoir plusieurs versions de 2.9.3 car sur la mienne je n'ai pas d'erreur!!!! ;) ;) :P

    Je confirme j'ai les 2 versions 2.9.3 :celle que j'ai en ligne la plus récente avec l'erreur
    et l'autre en local sans l'erreur
    • 0
  15. Aquarelle a ajouté un message dans un sujet  [CHERCHE] Comment insérer un Copyright sur mes images   


    http://www.phpcs.com/codes/CREATION-IMAGE-GD2_38758.aspx ;)
    • 0
  16. Aquarelle a ajouté un message dans un sujet  Voila ma gestion de stock   

    la mise à jour du stock se faisant automatiquement au moment de la validation de la commande, si celle ci est annulée ou pas honorée il faut remettre manuellement le stock, en attendant d'avoir un script pour le faire. :D
    • 0
  17. Aquarelle a ajouté un message dans un sujet  Probleme dans le backoffice   

    tu as bien changé ton login tout de suite aprés avoir mis en ligne........car il y a toujours des petits malins
    • 0
  18. Aquarelle a ajouté un message dans un sujet  Probleme dans le backoffice   

    j'ai trouvé ton login ne l'envoie pas
    c'est bizare. Moi je changerais le fichier administrer/index.php
    • 0
  19. Aquarelle a ajouté un message dans un sujet  Probleme dans le backoffice   

    désolé, je peux pas t'aider. Si on rajoute "log" à la suite de ton url , une fenètre d'autentification s'ouvre.
    t'as changé ton login et pass tout de suite quand ta mis en ligne ?
    • 0
  20. Aquarelle a ajouté un message dans un sujet  Probleme dans le backoffice   

    il contient quoi
    • 0
  21. Aquarelle a ajouté un message dans un sujet  Probleme dans le backoffice   

    t'as modifié des fichiers
    • 0
  22. Aquarelle a ajouté un message dans un sujet  Probleme dans le backoffice   

    t'as du modifier le login le mot de passe ou le privilége .Vérifie dans la bdd dans la table utilisateurs; tu cliques sur afficher et regarde si t'as "admin" dans la colonne "priv" sur la ligne de ton émail
    • 0
  23. Aquarelle a ajouté un message dans un sujet  intégration dans un template   

    C'est un peu confus dans ma petite tête, tu veux stocker dans le panier des préférences ? Peux tu donner plus d'explications avec un exemple concret :D :D
    • 0
  24. Aquarelle a ajouté un message dans un sujet  intégration dans un template   

    Si je comprends bien tu veux que le panier reste à 1 si on ajoute plusieur fois 1 unité :D
    • 0
  25. Aquarelle a ajouté un message dans un sujet  besoin d'aide pour faire la Mise en ligne   

    IL faut écrire dans la barre d'adresse
    http://www.nom_de_votre_site/installer.php et cliquer sur ok

    quand les champs sont remplis il y a un lien "accéder à la boutique"
    En faite la page obtenu avec installer.php correspond avec le fichier lib/setup/info_inc_php qui stocke les variables de votre site
    • 0

Twitter Advisto ecommerce

Facebook PEEL Shopping