Flux d’activité

Flux d’activité de Messages

  1. graounet


    Bonjour !

    je désire les modifier mais popur le moment ça résiste alors pourquoi ?

    le fichier variables a été modifié (plus d'express !)

    le fichier info.inc se modifie bien

    j'ai modifié le fichier function

    j'ai modifié le modèle php et de saisie de achat_maintenant et c'est comme si express existait toujours alors ou se cache-telle ? Les nouvelles n'existent toujours pas.

  2. viitec


    Bonjour, je suis sous Peel Premium 2.9

    J'avais laissé ma boutique en stand bye, mais depuis peu, je souhaite relancer le projet.

    J'essaye donc de la faire tourner, et c'est déjà fonctionnel.

    Maintenant j'essaye de faire des commande fictives, et là, ca coince :S

    1) www.lsi.re/shop/

    2) ajouter 1 article en cliquand sur "acheter"

    3) A gauche, dans le panier, cliquer sur "commander"

    le panier s'affiche donc !

    ensuite :

    - a gauche de la ligne qui désigne l'article, il y a une icone avec un homme qui jette un truc dans la poubelle

    le lien est : http://www.lsi.re/shop/achat/caddie_affich...eve&ligne=0

    le problème c'est que quand on clic sur cette icone, l'article disparait pas, et le site reste gelé !

    Bien sur, j'ai essayé sur d'autre serveurs, en local, sur le net, sous windows, sous linux, et c'est toujours le même bug :S

    Pourriez vous m'aider svp ?

  3. paumare


    1 faudrait faire le test

    2 un souci de syntaxe peu etre manque t il ou non une }

    Merci

    Mais faire quel test car au niveau de la base de données j'ai essaye en local et sur serveur

    dans les deux cas j'ai la même erreur.

    Pour la table

    peel_commandes"

    MySQL a répondu:Documentation

    #1075 - Un seul champ automatique est permis et il doit etre index�

    pour l'autre problème oui effectivement il se peut qu'il manque une}

    mais je n'est pas modifié ce fichier c'est celui que j'ai téléchargé en achetant ma licence.

  4. paumare


    Bonjour ,

    Je suis nouveau je viens d'acheter une licence Peel Premium.

    Désirant travailler en local avec easyphp.

    J'ai un premier soucis lors de la creation de la table "peel_commandes" dans mysql, j'ai un message d'erreur

    MySQL a répondu:Documentation

    #1075 - Un seul champ automatique est permis et il doit �tre index�

    Le champ en cause est `id_affilie` int(11) NOT NULL auto_increment,

    Ma question avez vous eu ce genre de soucis.

    Ensuite après avoir lancé le fichier installer.php et renseigné les champs en voulant aller sur la boutique,

    je me retrouve avec un 2ème message d'erreur.

    Parse error: parse error in c:\program files\easyphp1-8\www\peel premium\lib\fonctions\fonctions.php on line 563

    Voilà merci d'avance de votre aide car là pour un démarrage c'est plutôt hard.

  5. Willy


    Bonjour,

    en voulant désactivé les modules d'affiliation et de parrainage, j'ai noté un erreur.

    Les pages "condition" correspondantes s'affichent toujours.

    Il faut donc faire une petite correction dans modeles/default/haut.php et remplacer:

    echo "<br /><img src=\"$wwwroot/images/menminus.gif\" alt=\"\" /> <a href=\"$wwwroot/parrain.php\" class=\"normal\">Conditions de parrainage</a>";
    
    
    echo "<br /><img src=\"$wwwroot/images/menminus.gif\" alt=\"\" /> <a href=\"$wwwroot/affiliation.php\" class=\"normal\">Conditions d'affiliation</a>";
    Par:
    	if ($statusparrain == 1) {
    
    
    		echo "<br /><img src=\"$wwwroot/images/menminus.gif\" alt=\"\" /> <a href=\"$wwwroot/parrain.php\" class=\"normal\">Conditions de parrainage</a>";
    
    
    	}
    
    	if ($statusaffiliate == 1) {
    
    
    		echo "<br /><img src=\"$wwwroot/images/menminus.gif\" alt=\"\" /> <a href=\"$wwwroot/affiliation.php\" class=\"normal\">Conditions d'affiliation</a>";
    
    
    	}

    Willy

  6. ked


    Bonjour,

    Je ne vois pas ces urls avec ce -0 dans Google, par exemple

    http://www.google.com/search?q=site:paraph...=N&filter=0

    Quelle est ta règle dans ton htaccess que je puisse t'aider? (ou par MP si tu préfères)

    http://www.google.com/search?q=site:paraph...=N&filter=0

    regarde ce liens tu verras des lien avec -0 est on voie que google reprend les mots clé de la page index.php alors que les mots clés pour la page qui affiche le -0 est bien renseigner.

    Si on va sur cette page normalement via le site on a bien els mots clés qui s'affiche....

    merci pour ton aide

  7. ked


    non je ne suis pas d'accord je viens de regarder des facture que j'ai fait sur des sites en ligne et il y a bien les frais de port HT, la TVA et le TTC.

    Je ne demande pas ça pour le plaisir de faire figurer la TVA sur les frais de port, mais je vous assure que c'est obligatoire.

    et c'est obligatoire aussi d'avoir un sous total par taux de TVA.

    Merci

    ;) TVA à payer= TVA collectée - TVA déductible

    je ne comprend pas ton message, je sais très bioen ce que c'est de la TVA a payer le pb n'est pas là.

    il faut tout simplement détailé la TVA sur les factures. on ne peut pas mettre un forfait sur les frais de port car la TVA s'applique.

  8. Aquarelle


    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 stock.jpg 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);

  9. graounet


    si ça signifie que j'ai mis (copier collé) une valeur par une fonction d'un type tab[8] (de mémoire) dans le fichier variables la réponse est oui.

    je ne sais quoi faire.... ;)

    fred

    En fait j'étudie le phénomène et il y a l'inscripiton des données dans info.inc mais ou se passe la liaision avec achat_maintenant ? Car j'ai change le nom dans varaibles et dans achat_mainetnant et express fonctionne encore mais pas europe ! Bref ça reste en mémoire mais ou ????

Twitter Advisto ecommerce

Facebook PEEL Shopping