Flux d’activité

Flux d’activité de Messages


  1. Bonjour,

    J'ai essayé à tout hasard de placer le formulaire "ajouter au panier" qui se trouve plus bas dans le template du blog, mais j'obtiens une page blanche.

    Si vous avez une page blanche, il y a sans doute une erreur fatal mettant fin au script, et les messages d'erreurs ne sont pas affichés sur votre site. Pour voir cette erreur vous pouvez consulter les logs d'erreur de votre hébergement et analyser ces logs ce qui vous permettra ensuite procéder à la résolution du problème.

  2. xeon


    Bonjour,

    C'est pour une version 5.6.

    Pourrait-on ajouter le bouton "ajouter au caddie", à côté du descriptif court, juste en face du bouton "+ de détails", c'est-à-dire sur la page des catégories ?

     

    J'ai essayé à tout hasard de placer le formulaire "ajouter au panier" qui se trouve plus bas dans le template du blog, mais j'obtiens une page blanche.

    	echo '
    	<p class="retour">' . $descriptif . '</p>
    	<div class="col_detail"><a class="col_detail" href="' . $urlprod . '" title="' . $nom . '">' . MORE . '</a></div>
    	</div>
    <div class="col4">
    ';
    	if (est_identifie() && a_priv('admin')) {
    		echo '<p class="retour"><a href="' . $GLOBALS['administrer_url'] . '/produits.php?mode=modif&amp;id=' . $id . '" class="label">' . MODIFY_PRODUCT . '</a></p>';
    	}
    	echo '
    </div>
    ';
    }
    
    echo '
    <form method="post" action="' . $wwwroot . '/achat/caddie_ajout.php" id="' . $form . 'ajout' . $prodId . '">';
    	$hidden_input = '<input type="hidden" name="id" value="' . $prodId . '" />';
    
    	if (is_advanced_stock_module_active()) {
    		$sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks_temp WHERE produit_id = "' . $prodId . '"';
    		/* Ici on ne recherche que les produits dont le stock est > 0 */
    		$resStock = query($sqlStock);
    
    		/* Si la table des stocks temporaires est vide alors on teste la table réelle */
    
    		if (num_rows($resStock) == 0) {
    			$sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks WHERE produit_id = "' . $prodId . '" AND stock > 0';
    			/* Ici on ne recherche que les produits dont le stock est > 0 */
    			$resStock = query($sqlStock);
    		}
    
    		$Stock = fetch_assoc($resStock);
    		// On récupère le nombre de ligne dans le table, si = à 1 alors on est dans le cas d'un produit sans couleur ni taille
    		// Dans ce cas, le critere sera traité par <input type="hidden">
    		$numLigne = num_rows($resStock);
    
    		$stock_remain = 0; #- Initialisation de la variable Stock restant
    		$sPrix = 0; # Indique qu'il n'existe pas de prix / taille pour ce produit.
    
    		if ($numLigne == 1 && $Stock['couleur_id'] == 0 && $Stock['taille_id'] == 0) { // Si il y a du stock mais pas de couleur et pas de taille
    			/**
    			 * 1er cas : produit avec stock sans critère
    			 */
    			/* PRODUIT CONTENANT UN STOCK SANS TAILLE NI COULEUR */
    			$hidden_input .= '<input type="hidden" value="||" name="critere" />';
    			if ($Stock['stock'] != 0) {
    				affiche_etat_stock($Stock['stock']);
    
    				$stock_remain = 1;
    
    				echo '
    		<p class="retour">' . QUANTITY . ' : <input type="text" size="2" name="qte" value="1" onchange="if (this.value > ' . $Stock['stock'] . ') {this.value=\'' . $Stock['stock'] . '\'; alert(\'' . QUANTITY_INSUFFICIENT . '\');}" maxlength="3" /></p>';
    				echo '
    		<div class="bouton">
    			' . $hidden_input . '
    			<a class="blanc" href="Javascript:document.getElementById(\'' . $form . 'ajout' . $prodId . '\').submit()" title="' . ADD_CART . '">' . ADD_CART . '</a>
    		</div>';
    			}
    		} else {
    			/*
    			 * 2ème cas : produit avec stock avec critère
    			 */
    			if ($numLigne > 0) {
    				$cName = '';
    				$sName = '';
    
    				$cId = 0;
    				$sId = 0;
    				$sPrix = 0;
    				/* Indique qu'il n'existe pas de prix / taille pour ce produit. */
    
    				$sqlStockTrue = 'SELECT stock, couleur_id, taille_id FROM peel_stocks WHERE produit_id = "' . $prodId . '"';
    				$stockTrue = query($sqlStockTrue);
    
    				$selected = 1; #- cette variable permet d'initialiser les boutons radio en sélectionnant au moins 1 item
    
    				if (num_rows($stockTrue) > 0) {
    					echo '
    		<p class="retour">
    			<select name="critere" >';
    
    					while ($s = fetch_assoc($stockTrue)) {
    						$resCouleur = query('SELECT id, nom_' . $_SESSION['langue'] . ' as nom FROM peel_couleurs WHERE id = "' . $s['couleur_id'] . '"')
    						;
    
    						$resTaille = query('SELECT id, nom_' . $_SESSION['langue'] . ' as nom, prix, prix_revendeur FROM peel_tailles WHERE id = "' . $s['taille_id'] . '"')
    						;
    
    						if ($s['couleur_id'] > 0) {
    							/* si il y a une couleur */
    
    							$couleur = fetch_assoc($resCouleur);
    							$cId = $couleur['id'];
    							$cName = $couleur['nom'];
    						}
    
    						if ($s['taille_id'] > 0) {
    							/* si il y a une taille */
    
    							$taille = fetch_assoc($resTaille);
    							$sName = $taille['nom'];
    							if (is_reseller_module_active() && is_reseller()) {
    								$sPrix = $taille['prix_revendeur'] * (1 - $objProd->promotion / 100);
    							} else {
    								$sPrix = $taille['prix'] * (1 - $objProd->promotion / 100);
    							}
    							$sId = $taille['id'];
    						}
    
    						$sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks_temp WHERE produit_id = "' . $prodId . '" AND couleur_id = "' . vn($cId) . '" AND taille_id = "' . vn($sId) . '"';
    						/* Ici on ne recherche que les produits dont le stock est > 0 */
    
    						$resStock = query($sqlStock);
    
    						/* Si la table des stocks temporaires est vide alors on teste la table réelle */
    
    						if (num_rows($resStock) == 0) {
    							$sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks WHERE produit_id = "' . $prodId . '" AND stock > 0 AND couleur_id = "' . $cId . '" AND taille_id = "' . $sId . '"';
    							/* Ici on ne recherche que les produits dont le stock est > 0 */
    
    							$resStock = query($sqlStock);
    						}
    
    						$Stock = fetch_assoc($resStock);
    
    						if (!empty($Stock['stock'])) {
    							$stock_remain = 1;
    
    							echo '
    				<option value="' . $cId . '|' . $sId . '|' . $Stock['stock'] . '"' . ($selected == 1? ' selected="selected"':'') . '>';
    							// echo '<input type="radio" name="critere" value="'.$cId."|".$sId."|".$Stock['stock'].""';
    							if (!empty($cName)) {
    								echo COLOR . ' : ' . $cName;
    							}
    							if (!empty($sName)) {
    								echo ' - ' . SIZE . ' : ' . $sName;
    							}
    							if ($sPrix != 0) {
    								if (display_prices_with_taxes_active()) {
    									echo ' &nbsp; ' . fprix($sPrix, true) . ' ' . TTC;
    								} else {
    									$sPrix_ht = $sPrix / $objProd->tva;
    									echo ' &nbsp; ' . fprix($sPrix_ht, true) . ' ' . HT;
    								}
    							}
    							echo ($objProd->affiche_stock == 1 ?' - Stock : ' . $Stock['stock'] : '') . '</option>
    	';
    
    							$selected++;
    						} else {
    							echo '
    				<option value="NULL">';
    
    							if (!empty($cName)) {
    								echo $cName;
    							}
    
    							if (!empty($sName)) {
    								echo ' &nbsp; ' . $sName;
    							}
    
    							echo ' : ' . NO_AVAILABLE . '</option>
    	';
    						}
    					} # FIN DE LA BOUCLE WHILE
    					echo '
    			</select>
    		</p>';
    				}
    			} else {
    				/* Fin de la boucle if ($numLigne > 0) */
    				$hidden_input .= '
    			<input type="hidden" name="critere" value="||" />';
    			}
    
    			if ($stock_remain != 0) {
    				affiche_etat_stock($Stock['stock']);
    				echo '
    		<p class="retour">
    			' . QUANTITY . ' :<input type="text" size="3" name="qte" value="1" />
    			<input type="hidden" name="option" value="' . vn($sPrix) . '" />
    		</p>';
    
    				/* le <p class=retour se ferme dans la fonction template index */
    				echo '
    		<div class="bouton">
    			' . $hidden_input . '
    			<input type="hidden" value="' . $Stock['stock'] . '" name="stock" />
    			<a class="blanc" href="Javascript:document.getElementById(\'' . $form . 'ajout' . $prodId . '\').submit()" title="' . ADD_CART . '">' . ADD_CART . '</a>
    		</div>';
    			}
    		}
    
    		/* Sinon on propose l'alerte par mail - Fin de la boucle if $numLigne */
    
    		if ($affiche_stock == 1 && $Stock['stock'] != 0 && vn($cId) == 0 && vn($sId) == 0) {
    			echo '
    		<div style="text-align:right;">
    			<br /><span class="label"> Stock : ' . $Stock['stock'] . '</span><br />
    		</div>';
    		}
    		if (!empty($objProd->delai_stock)) {
    			echo '<br />' . DELIVERY_STOCK . ' :' . $objProd->delai_stock . '<br />';
    		}
    		if ($stock_remain == 0) {
    			echo '
    		<p class="retour">
    			<img src="' . $wwwroot . '/images/mail.gif" style="border:0" alt="mail" />&nbsp;
    			<a class="label" href="javascript:ProductAlert(\'' . $prodId . '', '' . $wwwroot . '\');" onmouseover="return overlib(\'' . OVERLIB_STOCK . '\');" onmouseout="return nd();">' . STOCK . '</a>
    		</p>';
    		}
    	} else {
    		// Peel Shopping
    		$sqlstock = 'SELECT * FROM peel_produits WHERE id = "' . $prodId . '"';
    		$query = query($sqlstock);
    		$p = fetch_object($query);
    
    		$sqlcriteres = 'SELECT c.id as cid, c.nom_' . $_SESSION['langue'] . ' as cname, t.id as tid, t.nom_' . $_SESSION['langue'] . ' as tname, t.prix
    			FROM peel_produits_couleurs pc
    			INNER JOIN peel_couleurs c ON c.id = pc.couleur_id
    			INNER JOIN peel_produits_tailles pt ON pt.produit_id = pc.produit_id
    			INNER JOIN peel_tailles t ON t.id = pt.taille_id
    			WHERE pc.produit_id = "' . $prodId . '"';
    		$query = query($sqlcriteres);
    		if ($query && num_rows($query) > 0) {
    			echo '<select name="critere">';
    			$selected = 1;
    			while ($type = fetch_object($query)) {
    				echo '<option value="' . $type->cid . '|' . $type->tid . '|"' . ($selected == 1 ? ' selected="selected"' : '') . '>'
    				 . (!empty($type->cname) ? COLOR . ' : ' . $type->cname . ' - ' : '')
    				 . (!empty($type->tname) ? SIZE . ' : ' . $type->tname : '')
    				 . '</option>';
    				$selected++;
    			}
    			echo '</select>';
    		} else {
    			$hidden_input .= '<input type="hidden" name="critere" value="||" />';
    		}
    
    		if ($p->on_rupture == 1 || $p->stock == 0) {
    			echo '
    				<p style="color:#cd0720;font-style:italic">
    					Ce produit est actuellement en rupture de stock. Vous ne pouvez pas le commander.
    				</p>';
    		} else {
    			echo '<p class="retour">' . QUANTITY . ' : <input type="text" size="3" name="qte" value="1" />'
    			 . $hidden_input . '
    					<input type="hidden" name="option" value="0" />
    				</p>
    				<div class="bouton">
    					<a class="blanc" href="Javascript:document.getElementById(\'' . $form . 'ajout' . $prodId . '\').submit()" title="' . ADD_CART . '">' . ADD_CART . '</a>
    				</div>';
    			if (!empty($p->delai_stock)) {
    				echo '<p>Délai disponible : ' . html_entity_decode($p->delai_stock) . '</p>';
    			}
    			if ($p->affiche_stock == 1) {
    				echo '<p>Stock disponible : ' . $p->stock . '</p>';
    			}
    		}
    	}
    	echo '
    </form>';
    }
    

    Merci.


  3. Bonjour,

    Est-il normal qu'un tas de variables de configuration sur Peel 7.0 aient été redatées samedi dernier, alors que personne, à priori ne soit allé sur l'admin ?

    Les dates ont été mis à jour suite à la validation du formulaire de configuration du site (page administrer/sites.php)

    Notice: Erreur SQL 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS r' at line 1 - Page : /boutique/ - IP 86.68.33.210 - SELECT a.on_reseller, .titre_fr as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS rubrique_id, r.nom_fr AS rubrique FROM peel_articles a INNER JOIN peel_articles_rubriques ar ON a.id = ar.article_id INNER JOIN peel_rubriques r ON r.id = ar.rubrique_id AND r.site_id IN (0,1) WHERE a.on_rollover = '1' AND a.titre_fr != '' AND r.nom_fr != '' AND a.etat='1' AND a.site_id IN (0,1) GROUP BY a.id ORDER BY a.date_insere DESC LIMIT 20 - Error number in /home/../www/boutique/lib/fonctions/database.php on line 239

    Il manque l'alias a du champ titre_fr dans la requête SQL du fichier \modules\menus\fonctions.php. Pour information ce problème n'est pas présent sur PEEL.

  4. xeon


    Bonjour,

    Je m'inquiète.

    Est-il normal qu'un tas de variables de configuration sur Peel 7.0 aient été redatées samedi dernier, alors que personne, à priori ne soit allé sur l'admin ?

     

    Supprimer keep_old_orders_intact edit integerkeep_old_orders_intact014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer in_category edit integerin_category014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer html_editor edit integerhtml_editor014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer global_remise_percent edit floatglobal_remise_percent0.0000014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer format_numero_facture edit stringformat_numero_facture[order_id]14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer favicon edit stringfaviconag8kr-xPgwAWhw.ico14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer export_encoding edit stringexport_encodingutf-814/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer enable_prototype edit integerenable_prototype014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer enable_jquery edit integerenable_jquery114/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer email_webmaster edit stringemail_webmastercontact@ar14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer email_paypal edit stringemail_paypal 14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer email_moneybookers edit stringemail_moneybookers 14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer email_commande edit stringemail_commandecontact@a14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer email_client edit stringemail_clientcontact@afr14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer display_prices_with_taxes_in_admin edit integerdisplay_prices_with_taxes_in_admin114/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer display_prices_with_taxes edit integerdisplay_prices_with_taxes114/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer display_nb_product edit integerdisplay_nb_product014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer display_errors_for_ips edit stringdisplay_errors_for_ips86.68.33.21014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer devise_defaut edit integerdevise_defaut114/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer default_picture edit stringdefault_pictureimage_defaut_peel.png14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer css edit stringcssscreen.css14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer category_order_on_catalog edit integercategory_order_on_catalog014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer category_count_method edit stringcategory_count_methodindividual14/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer availability_of_carrier edit integeravailability_of_carrier014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer auto_promo edit integerauto_promo014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer anim_prod edit integeranim_prod114/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer admin_force_ssl edit stringadmin_force_ssl014/11/2015 10h28:39sites.phppuce-verte.gif1
    Supprimer act_on_top edit integeract_on_top014/11/2015 10h28:39sites.phppuce-verte.gif1

     

    De plus il y a une erreur sur la page d'accueil du même site, depuis vendredi dernier :

    Notice: Erreur SQL 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS r' at line 1 - Page : /boutique/ - IP 86.68.33.210 - SELECT a.on_reseller, .titre_fr as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS rubrique_id, r.nom_fr AS rubrique FROM peel_articles a INNER JOIN peel_articles_rubriques ar ON a.id = ar.article_id INNER JOIN peel_rubriques r ON r.id = ar.rubrique_id AND r.site_id IN (0,1) WHERE a.on_rollover = '1' AND a.titre_fr != '' AND r.nom_fr != '' AND a.etat='1' AND a.site_id IN (0,1) GROUP BY a.id ORDER BY a.date_insere DESC LIMIT 20 - Error number in /home/../www/boutique/lib/fonctions/database.php on line 239

     

    Serait-ce lié ?

     

    Merci


  5. Bonjour,

    Merci pour votre message, ce problème est apparue sur les versions 7.2. Pour corriger, vous devez modifier le fichier administrer/rpc_positions.php et remplacer
    la requête SQL

            $sql = "UPDATE peel_pays
                SET position='%s' AND " . get_filter_site_cond('pays', null, true) . "
                WHERE id='%s'";

    par

            $sql = "UPDATE peel_pays
                SET position='%s'
                WHERE id='%s' AND " . get_filter_site_cond('pays', null, true) . "";

    La prochaine version de PEEL bénéficiera de cette correction.

  6. paulanna


    oui il n'existe pas par défaut, j'avais suivi ton exemple plus haut où tu donnais id à 0 dans l'exemple.

    voici ma nouvelle config :

    '1'=>'puce-orange.gif', '3'=>'puce-verte.gif', '4'=>'puce-blanche.gif'

    sur la liste des commandes j'ai les 3 images affichées sans cliquer, pourquoi ais-je deux fois la puce blanche  : 

    j'ai puce orange(1), puce blanche(4), puce blanche(4).

    d'accord .... le code affiche la puce blanche si l'id n'est pas égal au statut défini dans la config. Voilà pourquoi j'ai deux puces blanches.

    je suis un peu sceptique quant à l'utilisation de ce module

  7. paulanna


    j'ai renseigné les trois images en fonction du statut comme indiqué dans ton exemple.

    mais voici que sur la liste des commandes j'ai trois images qui s'affichent :

    deux fois l'image pour le statut = 0 et une autre pour le statut = 1

    j'ai fais :

    '0'=>'puce-blanche.gif', '1'=>'puce-orange.gif', '3'=>'puce-verte.gif'

     

    alors que ma commande a le statut de : En attente de livraison soit id 0


  8. Bonjour,

    Sur quel mode faut-il configurer le contenu de l'option ? Que je le configure en true ou false, j'ai les mêmes résultats, qui ne correspondent pas au méta title renseigné par moi-même dans les champs affectés pour cela.

     Pour les catégories, c'est le paramètre :

        Origine :   admin
        Code technique : get_straight_category_page_title
        Type : boolean
        Votre contenu :    true

    => C'est ce paramètre qui ne fonctionne pas dans votre cas ?

    Le titre du site, c'est-à-dire de la page d'accueil est également modifié. Est-il possible de contrôler cela ?

     Vous pouvez gérer les métas spécifiquement pour une page depuis la page de gestion des méta administrer/meta.php


  9. Bonjour,

    merci pour votre retour, pour corriger il faut modifier le fichier lib/fonctions/fonctions_admin.php. Sur une version 8.0.1, à la ligne 1713 il faut remplacer la requête par

                $query = query('SELECT societe, prenom, nom_famille AS nom, adresse, code_postal, ville, pays, email, telephone AS contact

    par

                $query = query('SELECT societe, prenom, nom_famille AS nom, adresse, code_postal AS zip, ville, pays, email, telephone

    et changer le foreach ligne 1719

    					foreach($frm['adresses_fields_array'] as $this_item) {
    						$frm[$this_item . '1'] = $result[$this_item];
    						$frm[$this_item . '2'] = $result[$this_item];
    					}
    				}

    par

    					foreach($frm['adresses_fields_array'] as $this_item) {
    						if ($this_item == 'telephone') {
    							$this_frm_item = 'contact';
    						} elseif ($this_item == 'zip') {
    							$this_frm_item = 'code_postal';
    						} else {
    							$this_frm_item = $this_item;
    						}
    
    						$frm[$this_frm_item . '1'] = $result[$this_item];
    						$frm[$this_frm_item . '2'] = $result[$this_item];
    					}

     

Twitter Advisto ecommerce

Facebook PEEL Shopping