Jump to content

Recommended Posts

Bonjour à tous,

 

J'ai un assez gros problème depuis ce matin et je ne sais pas trop d'où ca peut provenir. Je n'arrive plus à afficher certaines fiches de mes produits. A la place j'ai ceci :

post-1388891-0-04334400-1502356365_thumb.jpg

J'ai désactivé les URL simplifiées mais ca n'a rien changer.

Le problème n’apparaît pas sur tous les produits étrangement.

 

J'ai besoin de votre aide ! Merci d'avance.

Link to comment
Share on other sites

Vraiment bizarre... J'ai vider le cache de prestashop et du navigateur et maintenant sur le lien précédent le problème à disparu mais sur d'autre produits le problème est toujours là :-/

Par exemple sur http://www.lamelec.be/eshop/fr/cable-de-donnees/1859-u-utp-cat6-2x-4p-lsoh-bleu-ral5012.html

Et je suis en guest aussi

Edited by Galliass (see edit history)
Link to comment
Share on other sites

Si si mais il faut la voir^^

Fatal error: Cannot use object of type Product as array in /customers/6/4/6/lamelec.be/httpd.www/eshop/cache/smarty/compile/05/62/3e/05623ee22aa5e49913b98d3a0f7098b7d7f4a45e.file.productcomments.tpl.php on line 207

donc tpl foireux qui utilise $product.name au lieu de $product->name par exemple

Link to comment
Share on other sites

C'est vraiment étrange. Déjà je n'arrive pas à désactiver le module. Lorsque j’essaie de le désactiver rien ne se passe. Et amintenant quand je retourne sur la fiche produit, la page se charge cette fois et j'ai ce message en haut de la page qui apparaît.

 

Notice: Undefined index: link_rewrite in /customers/6/4/6/lamelec.be/httpd.www/eshop/modules/blockcms/BlockCMSModel.php on line 274 Notice: Undefined index: name in /customers/6/4/6/lamelec.be/httpd.www/eshop/modules/blockcms/BlockCMSModel.php on line 275

 


Si si mais il faut la voir^^

Fatal error: Cannot use object of type Product as array in /customers/6/4/6/lamelec.be/httpd.www/eshop/cache/smarty/compile/05/62/3e/05623ee22aa5e49913b98d3a0f7098b7d7f4a45e.file.productcomments.tpl.php on line 207

donc tpl foireux qui utilise $product.name au lieu de $product->name par exemple

Ah ok tu as été plus rapide que moi pour répondre. Je vais chercher sur cette piste alors.

Link to comment
Share on other sites

Dans le fichier productcomments.php du thème j'ai ca
 

} elseif (Tools::isSubmit('deleteproductcommentscriterion')) {
            $productCommentCriterion = new ProductCommentCriterion((int) Tools::getValue('id_product_comment_criterion'));
            if ($productCommentCriterion->id) {
                if ($productCommentCriterion->delete()) {
                    $this->_html .= '<div class="conf confirm alert alert-success">'.$this->l('Criterion deleted').'</div>';
                }

Et le fichier productcomments.tpl ne contient pas assez de ligne de toute façon :-/

Link to comment
Share on other sites

J'ai également un autre fichier dans le même dossier "ProductCOmment.php" avec ceci:

{
		/* Get all grades */
		$grades = ProductComment::getGradeByProduct((int)$id_product, (int)$id_lang);
		$total = ProductComment::getGradedCommentNumber((int)$id_product);
		if (!count($grades) || (!$total))
			return array();

		/* Addition grades for each criterion */
		$criterionsGradeTotal = array();
		$count_grades = count($grades);
		for ($i = 0; $i < $count_grades; ++$i)
			if (array_key_exists($grades[$i]['id_product_comment_criterion'], $criterionsGradeTotal) === false)
				$criterionsGradeTotal[$grades[$i]['id_product_comment_criterion']] = (int)($grades[$i]['grade']);
			else
				$criterionsGradeTotal[$grades[$i]['id_product_comment_criterion']] += (int)($grades[$i]['grade']);

		/* Finally compute the averages */
		$averages = array();
		foreach ($criterionsGradeTotal as $key => $criterionGradeTotal)
			$averages[(int)($key)] = (int)($total) ? ((int)($criterionGradeTotal) / (int)($total)) : 0;
		return $averages;
	}
Edited by Galliass (see edit history)
Link to comment
Share on other sites

euh... la ligne 207 c'est dans le fichier compilé (qui est plus long)^^

eshop/cache/smarty/compile/05/62/3e/05623ee22aa5e49913b98d3a0f7098b7d7f4a45e.file.productcomments.tpl.php

 

Donc, donnez-nous le contenu du productcomments.tpl du module du thème svp (votre_theme/modules/productcomments/productcomments.tpl )

Link to comment
Share on other sites

}

	{if isset($warehouse_vars.product_tabs) && $warehouse_vars.product_tabs}
	<section class="page-product-box tab-pane fade" id="reviewsTab">
	{else}
	<section class="page-product-box" id="reviewsTab">
	<h3 class="page-product-heading">{l s='Reviews' mod='productcomments'}</h3>
	{/if}
	<div id="product_comments_block_tab">
		{if $comments}
			{foreach from=$comments item=comment}
				{if $comment.content}
				<div class="comment row" itemprop="review" itemscope itemtype="https://schema.org/Review">
					<div class="comment_author col-sm-2">
						<span>{l s='Grade' mod='productcomments'} </span>
						<div class="star_content clearfix"  itemprop="reviewRating" itemscope itemtype="https://schema.org/Rating">
							{section name="i" start=0 loop=5 step=1}
								{if $comment.grade le $smarty.section.i.index}
									<div class="star"></div>
								{else}
									<div class="star star_on"></div>
								{/if}
							{/section}
            				<meta itemprop="worstRating" content = "0" />
							<meta itemprop="ratingValue" content = "{$comment.grade|escape:'html':'UTF-8'}" />
            				<meta itemprop="bestRating" content = "5" />
						</div>
						<div class="comment_author_infos">
							<strong itemprop="author">{$comment.customer_name|escape:'html':'UTF-8'}</strong>
							<meta itemprop="datePublished" content="{$comment.date_add|escape:'html':'UTF-8'|substr:0:10}" />
							<em>{dateFormat date=$comment.date_add|escape:'html':'UTF-8' full=0}</em>
						</div>
					</div> <!-- .comment_author -->

					<div class="comment_details col-sm-10">
						<p itemprop="name" class="title_block">
							<strong>{$comment.title}</strong>
						</p>
						<p itemprop="reviewBody">{$comment.content|escape:'html':'UTF-8'|nl2br}</p>
						<ul>
							{if $comment.total_advice > 0}
								<li>
									{l s='%1$d out of %2$d people found this review useful.' sprintf=[$comment.total_useful,$comment.total_advice] mod='productcomments'}
								</li>
							{/if}
							{if $is_logged}
								{if !$comment.customer_advice}
								<li>
									{l s='Was this comment useful to you?' mod='productcomments'}
									<button class="usefulness_btn btn btn-default button button-small" data-is-usefull="1" data-id-product-comment="{$comment.id_product_comment}">
										<span>{l s='Yes' mod='productcomments'}</span>
									</button>
									<button class="usefulness_btn btn btn-default button button-small" data-is-usefull="0" data-id-product-comment="{$comment.id_product_comment}">
										<span>{l s='No' mod='productcomments'}</span>
									</button>
								</li>
								{/if}
								{if !$comment.customer_report}
								<li>
									<span class="report_btn" data-id-product-comment="{$comment.id_product_comment}">
										{l s='Report abuse' mod='productcomments'}
									</span>
								</li>
								{/if}
							{/if}
						</ul>
					</div><!-- .comment_details -->

				</div> <!-- .comment -->
				{/if}
			{/foreach}
			{if (!$too_early AND ($is_logged OR $allow_guests))}
			<p class="align_center">
				<a id="new_comment_tab_btn" class="btn btn-default button button-small open-comment-form" href="#new_comment_form">
					<span>{l s='Write your review!' mod='productcomments'} !</span>
				</a>
			</p>
			{/if}
		{else}
			{if (!$too_early AND ($is_logged OR $allow_guests))}
			<p class="align_center">
				<a id="new_comment_tab_btn" class="btn btn-default button button-small open-comment-form" href="#new_comment_form">
					<span>{l s='Be the first to write your review!' mod='productcomments'}</span>
				</a>
			</p>
			{else}
			<p class="align_center">{l s='No customer reviews for the moment.' mod='productcomments'}</p>
			{/if}
		{/if}
	</div> <!-- #product_comments_block_tab -->
</section>


<!-- Fancybox -->
<div style="display: none;">
	<div id="new_comment_form">
		<form id="id_new_comment_form" action="#">
			<h2 class="page-subheading">
				{l s='Write a review' mod='productcomments'}
			</h2>
			<div class="row">
				{if isset($product) && $product}
					<div class="product clearfix  col-xs-12 col-sm-6">
						<img src="{$productcomment_cover_image}" height="{$mediumSize.height}" width="{$mediumSize.width}" alt="{$product->name|escape:'html':'UTF-8'}" />
						<div class="product_desc">
							<p class="product_name">
								<strong>{if isset($product->name)}{$product->name}{else}{$product.name}{/if}</strong>
							</p>
							{if isset($product->description_short)}{$product->description_short}{else}{$product.description_short}{/if}
							
						</div>
					</div>
				{/if}
				<div class="new_comment_form_content col-xs-12 col-sm-6">
					<div id="new_comment_form_error" class="error" style="display: none; padding: 15px 25px">
						<ul></ul>
					</div>
					{if $criterions|@count > 0}
						<ul id="criterions_list">
						{foreach from=$criterions item='criterion'}
							<li>
								<label>{$criterion.name|escape:'html':'UTF-8'}:</label>
								<div class="star_content">
									<input class="star not_uniform" type="radio" name="criterion[{$criterion.id_product_comment_criterion|round}]" value="1" />
									<input class="star not_uniform" type="radio" name="criterion[{$criterion.id_product_comment_criterion|round}]" value="2" />
									<input class="star not_uniform" type="radio" name="criterion[{$criterion.id_product_comment_criterion|round}]" value="3" />
									<input class="star not_uniform" type="radio" name="criterion[{$criterion.id_product_comment_criterion|round}]" value="4" />
									<input class="star not_uniform" type="radio" name="criterion[{$criterion.id_product_comment_criterion|round}]" value="5" checked="checked" />
								</div>
								<div class="clearfix"></div>
							</li>
						{/foreach}
						</ul>
					{/if}
					<label for="comment_title">
						{l s='Title:' mod='productcomments'}: <sup class="required">*</sup>
					</label>
					<input id="comment_title" name="title" type="text" value=""/>
					<label for="content">
						{l s='Comment:' mod='productcomments'}: <sup class="required">*</sup>
					</label>
					<textarea id="content" name="content"></textarea>
					{if $allow_guests == true && !$is_logged}
						<label>
							{l s='Your name:' mod='productcomments'} <sup class="required">*</sup>
						</label>
						<input id="commentCustomerName" name="customer_name" type="text" value=""/>
					{/if}
					<div id="new_comment_form_footer">
						<input id="id_product_comment_send" name="id_product" type="hidden" value='{$id_product_comment_form}' />
						<p class="fl required"><sup>*</sup> {l s='Required fields' mod='productcomments'}</p>
						<p class="fr">
							<button id="submitNewMessage" name="submitMessage" type="submit" class="btn button button-small">
								<span>{l s='Submit' mod='productcomments'}</span>
							</button> 
							{l s='or' mod='productcomments'} 
							<a class="closefb" href="#">
								{l s='Cancel' mod='productcomments'}
							</a>
						</p>
						<div class="clearfix"></div>
					</div> <!-- #new_comment_form_footer -->
				</div>
			</div>
		</form><!-- /end new_comment_form_content -->
	</div>
</div>
<!-- End fancybox -->
{strip}
{addJsDef productcomments_controller_url=$productcomments_controller_url|@addcslashes:'\''}
{addJsDef moderation_active=$moderation_active|boolval}
{addJsDef productcomments_url_rewrite=$productcomments_url_rewriting_activated|boolval}
{addJsDef secure_key=$secure_key}

{addJsDefL name=confirm_report_message}{l s='Are you sure that you want to report this comment?' mod='productcomments' js=1}{/addJsDefL}
{addJsDefL name=productcomment_added}{l s='Your comment has been added!' mod='productcomments' js=1}{/addJsDefL}
{addJsDefL name=productcomment_added_moderation}{l s='Your comment has been added and will be available once approved by a moderator.' mod='productcomments' js=1}{/addJsDefL}
{addJsDefL name=productcomment_title}{l s='New comment' mod='productcomments' js=1}{/addJsDefL}
{addJsDefL name=productcomment_ok}{l s='OK' mod='productcomments' js=1}{/addJsDefL}
{/strip}

Et la ligne 207 du fichier compilé:

<?php } else { ?><?php echo $_smarty_tpl->tpl_vars['product']->value['description_short'];?>
Edited by Galliass (see edit history)
Link to comment
Share on other sites

{if isset($product->description_short)}{$product->description_short}{else}{$product.description_short}{/if}

coupable trouvé^^

 

a remplacer par

{if isset($product->description_short)}{$product->description_short}{else}{$product->description_short}{/if}
  • Like 1
Link to comment
Share on other sites

Wow ca a l'air d'avoir marché ! Les fiches produits ont l'air de s'afficher toutes correctement en tous cas pour le moment.

Je n'aurais jamais trouvé sans votre aide ! Merci !

 

Par contre, un autre problème vient de surgir (je ne sais pas si c'est lié). Je viens d'essayer de modifier le texte de ma page de contacte car il y avait des balises qui, au lieu de faire leur fonction, s'affichait en forme de texte (balises /r et /s). J'avais déjà eu ce problème avant mais cette fois-ci, lorsque j'ai essayé de corriger l'erreur puis de sauvegarder, ce message est apparu:

 

post-1388891-0-61169500-1502361867_thumb.jpg

 

Décidément les problèmes n'arrivent jamais seuls :-/

Edited by Galliass (see edit history)
Link to comment
Share on other sites

Bon, apparemment je n'arrive pas à faire de sauvegarde dans un autre module également. Je n'arrive pas non plus à désactiver le module "Commentaires produits" donc je vais utiliser un backup d'il y a quelques jours...

Je ne sais pas ce qu'il s'est passé mais là il y a trop de problèmes qui surgissent. Ce n'est pas normal.

Link to comment
Share on other sites

Je n'ai mis le site en ligne que hier et nous n'avons pas encore eu de nouveau client ni de commande.

 

Je veux bien essayer de résoudre le problème mais pour le module customecontactpage, le dossier est vide, il n'y a pas de fichier .tpl ni .php. Uniquement un dossier translations...

 
Link to comment
Share on other sites

Faudrait peut-être avoir une idée de comment ça marche aussi.
customercontactpage dans themes/xxx/modules mais aussi modules/customercontactpage
 
 
Moi j'aime
 

Je n'ai mis le site en ligne que hier et nous n'avons pas encore eu de nouveau client ni de commande.

J'ai un assez gros problème depuis ce matin ...

 

Donc tu as toujours eu tes problèmes.

Link to comment
Share on other sites

J'ai été voir dans la bd dans la table `lam_configuration_lang` et c'est bien là que le texte de la page de contact est sauvegardé, mais je ne vois pas de problème et l'entré 388 n'est pas en double comme dit dans le message d'erreur:

Duplicate entry '388-2' for key 'PRIMARY'


INSERT INTO `lam_configuration_lang` (`id_configuration`, `id_lang`, `value`, `date_upd`) VALUES ('388', '2', '', '2017-08-10 13:53:58')

Je me demande aussi quelle erreur il y a sur cette ligne :-/

throw new PrestaShopDatabaseException($this->getMsgError().'<br /><br /><pre>'.$sql.'</pre>');

Ai-je bien compris ? Est-ce bien là que ce situe le problème ?

 

Faudrait peut-être avoir une idée de comment ça marche aussi.
customercontactpage dans themes/xxx/modules mais aussi modules/customercontactpage

 

Oui j'avais oublié de regarder là aussi mais je ne vois toujours pas d'où l'erreur pourrait provenir dans ces fichiers :-/

Link to comment
Share on other sites

Normal qu'il n'y ait pas de doublon dans la table vu que Prestashop a refusé de l'écrire

throw new PrestaShopDatabaseException($this->getMsgError().'<br /><br /><pre>'.$sql.'</pre>');

Ca, ça veut dire: En cas de problème j'affiche "$sql" qui contient l'erreur

Link to comment
Share on other sites

Normal qu'il n'y ait pas de doublon dans la table vu que Prestashop a refusé de l'écrire

throw new PrestaShopDatabaseException($this->getMsgError().'<br /><br /><pre>'.$sql.'</pre>');

 

Ca ok, je comprends.

 

Mais pour le reste j'ai beau regarder les messages d'erreurs, je n'ai aucune idée de ce qu'il faut faire :-/

 

J'ai mis tous les messages d'erreur en pièces jointes. Si l'un d'entre vous pouvait y jeter un œil, je vous en serais très reconnaissant.

post-1388891-0-39466500-1502370928_thumb.jpg

post-1388891-0-41444500-1502370929_thumb.jpg

post-1388891-0-31539300-1502370930_thumb.jpg

post-1388891-0-81017900-1502370930_thumb.jpg

post-1388891-0-31303900-1502370931_thumb.jpg

post-1388891-0-82146900-1502370931_thumb.jpg

post-1388891-0-36197500-1502370932_thumb.jpg

post-1388891-0-79652600-1502370932_thumb.jpg

post-1388891-0-20456800-1502370933_thumb.jpg

post-1388891-0-66138500-1502370933_thumb.jpg

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...