Ajout d'une condition if else

Soutien général pour les problèmes techniques avec OpenCart

Ajout d'une condition if else

Messagepar mirbrou » 06 Avr 2015, 18:06

Bonjour,
je veux mettre une condition dans ma boutique pour permettre d'afficher deux types différents de menu déroulant pour placer une commande. l'une est à l'unité et l'autre présente des unités de longueur. Pour ce faire, j'utilise les balises produits. Or les tentatives que j'ai faites renvoient toujours le même résultats. Voici ce que j'ai fait :
Dans le fichier : \catalog\view\theme\default\template\product\product.tpl

Code: Tout sélectionner
<div class="content">
              <?php if ($product_tags=="Pré-coupé") { ?>
                test1 
              <?php } else ?>
                 test2
              <?php echo "<pre>product_tags=|";print_R($product_tags);echo "|<pre>\n"; ?>
              <?php echo "<pre>tags=|";print_R($tags);echo "|<pre>\n"; ?>
              <?php ?>
                <p></p>

J'ai aussi essayé ce code :
Code: Tout sélectionner
<?php if (in_array("Precut", $tags)) { ?>
                          test1
                <?php } else { ?>
                         test2
                 <?php } ?>

et j'ai sensiblement le même résultat.
Sur l'image jointe, le produit de gauche devrait retourner "test2" et le produit de droite "test1".
Quelqu'un pourrait me dire l'erreur que je fais ou me proposer une solution pour atteindre mon but ?
Pièces jointes
Capture d’écran 2015-04-04.jpg
Capture d'écran de 2 fiches produits
Dernière édition par mirbrou le 25 Juin 2015, 15:51, édité 1 fois au total.
Opencart : 2.0.1.1
VQmod : 2.5.1

Hébergeur : votresite.ca
site web : cotonflanelle.com
site test : mireillebrousseau.com -> template kingdtore de Theme Global
Enhanced VQMod Manager and Editor 1.0
Admin Enhanced Products 2.x
Customers Also Viewed / Purchased (2in1)
Export-import 2.0.x-2.26
mirbrou
 
Messages: 43
Inscrit le: 03 Avr 2015, 05:50

Re: Ajout d'une condition if else

Messagepar lucho69 » 08 Avr 2015, 08:49

là on est sur du code pur et dur

je pense que le else est mal fait , il manque l'ouverture et ferture du else
j'éviterais aussi des valeurs avec accent ou tiret qui peuvent être stockés différemment

<?php if ($product_tags=="precoupe") { ?>
test1
<?php } else { ?>
test2 <?php } ?>
Opencart 1.5.x - 2.x.x Opencart Assistance Dépannage

Image
lucho69
 
Messages: 907
Inscrit le: 09 Juil 2010, 13:51
Localisation: lyon

Re: Ajout d'une condition if else

Messagepar mirbrou » 09 Avr 2015, 02:58

Merci !

Mais pas de bol. Ça retourne toujours la valeur test 2 :-(
Opencart : 2.0.1.1
VQmod : 2.5.1

Hébergeur : votresite.ca
site web : cotonflanelle.com
site test : mireillebrousseau.com -> template kingdtore de Theme Global
Enhanced VQMod Manager and Editor 1.0
Admin Enhanced Products 2.x
Customers Also Viewed / Purchased (2in1)
Export-import 2.0.x-2.26
mirbrou
 
Messages: 43
Inscrit le: 03 Avr 2015, 05:50

Re: Ajout d'une condition if else

Messagepar lucho69 » 09 Avr 2015, 10:16

fais afficher la valeur du contenu $product_tags dans le TPL pour être sur que le champ est renseigné
si il s'affiche vide, c'est que le champ n'est pas envoyé
Opencart 1.5.x - 2.x.x Opencart Assistance Dépannage

Image
lucho69
 
Messages: 907
Inscrit le: 09 Juil 2010, 13:51
Localisation: lyon

Re: Ajout d'une condition if else

Messagepar mirbrou » 25 Avr 2015, 00:49

Je reviens avec mon problème que je n'ai pas encore résolu.

J'ai des valeurs pour product_tags. Les tags sont bel et bien présent. Malgré tout, c'est le résultat du else s'affiche.
j'ai tenté avec category_id, même résultat.
La seule façon de faire afficher le résultat de la première condition, c'est avec product_id.
Je dois dire que je travaille dans la page views/..../product.tpl

Par contre, dans le fichier controller/..../product.tpl , j'ai placé le code suivant et tout fonctionne bien:
if ($category_id == '51') {
echo "<h1>*** Précoupé ***</h1>";
} else {
echo "<h1>*** au mètre ***</h1>";
}
if ($product_tags == 'precut') {
echo "<h1>*** Précoupé ***</h1>";
} else {
echo "<h1>*** au mètre ***</h1>";
}

Donc la condition fonctionne à partir de controller mais pas de view.

Help, je ne peux mettre ma boutique en ligne tant que je n'ai pas résolu ce problème.

je joints le fichier View/..../product.tpl. qui sait, il vous donnera peut-être la clé de mon énigme


Merci pour votre aide.

Code: Tout sélectionner
<div class="form-group">
                <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label>    
                <p></p>
             <?php if ($product_tags == 'precut'): ?>
              <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" />
              <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" />
              <?php else: ?>
               <select id="quantity" name="quantity">
               <option value="1">0.25 m</option>   
                <option value="2">0.50 m</option>
                <option value="3">0.75 m</option>
           <option value="4">1.00 m</option>
                <option value="5">1.25 m</option>
        <option value="6">1.50 m</option>
         <option value="7">1.75 m</option>
              <option value="8">2.0 m</option>
                <option value="9">2.25 m</option>
                 <option value="10">2.50 m</option>
                 <option value="11">2.75 m</option>
                 <option value="12">3.0 m</option>
                 <option value="13">3.25 m</option>
                 <option value="14">3.50 m</option>
                 <option value="15">3.75 m</option>
                 <option value="16">4.0 m</option>
                 <option value="17">4.25 m</option>
                 <option value="18">4.50 m</option>
                 <option value="19">4.75 m</option>
      <option value="20">5 m</option>
             </select>
               <?php endif; ?>
Opencart : 2.0.1.1
VQmod : 2.5.1

Hébergeur : votresite.ca
site web : cotonflanelle.com
site test : mireillebrousseau.com -> template kingdtore de Theme Global
Enhanced VQMod Manager and Editor 1.0
Admin Enhanced Products 2.x
Customers Also Viewed / Purchased (2in1)
Export-import 2.0.x-2.26
mirbrou
 
Messages: 43
Inscrit le: 03 Avr 2015, 05:50

Re: Ajout d'une condition if else

Messagepar mirbrou » 25 Avr 2015, 15:09

Je dois ajouter qu'il y a eu une mise à jour de la base de données de la plateforme qui héberge ma boutique, et que les petits coquins ont éliminé le fichier product_tags. Les tags "tag" se retrouvent maintenant dans le fichier product_description.

:?
Opencart : 2.0.1.1
VQmod : 2.5.1

Hébergeur : votresite.ca
site web : cotonflanelle.com
site test : mireillebrousseau.com -> template kingdtore de Theme Global
Enhanced VQMod Manager and Editor 1.0
Admin Enhanced Products 2.x
Customers Also Viewed / Purchased (2in1)
Export-import 2.0.x-2.26
mirbrou
 
Messages: 43
Inscrit le: 03 Avr 2015, 05:50

Re: Ajout d'une condition if else

Messagepar lucho69 » 25 Avr 2015, 18:03

difficile d'apporter de l'aide sur ce type de pb, le forum est un lieu d'entraide, mais du dépannage pur , ça peut être difficile
pb de base de données : il faut revoir l partie cassée avec une sauvegarde à jour
pour le else ifelse , tu rentre dans des imbrications complexes- essaie de faire des tests simples
je viens de finir un petit developpement pour autoriser le chargerment de pdf et de swf
je voulais faire un :
if pdf : xxxx
elseif swf : yyy
else : zzz

au final j'ai fait
if pdf : xxx
else
if swf : yyy
else
zzzz
endif
endif
et ca a été OK
Opencart 1.5.x - 2.x.x Opencart Assistance Dépannage

Image
lucho69
 
Messages: 907
Inscrit le: 09 Juil 2010, 13:51
Localisation: lyon

Re: Ajout d'une condition if else

Messagepar mirbrou » 12 Juin 2015, 14:35

Bonjour,

Le problème a été résolu, mais en utilisant category_id plutôt que product_tags :

Dans le fichier product.tpl :
La syntaxe utilisée :
<?php if ($category_id == "51") { ?>

Code: Tout sélectionner
<div class="form-group">
               <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label>
                <p></p>
             <?php if (($category_id == "51")or ($category_id == "55")) { ?>
               <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" />
            </select>
            <?php } else { ?>
               <select id="quantity" name="quantity">
               <option value="1">0.25 m</option>
                <option value="2">0.50 m</option>
                <option value="3">0.75 m</option>
           <option value="4">1.00 m</option>
                <option value="5">1.25 m</option>
        <option value="6">1.50 m</option>
         <option value="7">1.75 m</option>
              <option value="8">2.0 m</option>
                <option value="9">2.25 m</option>
                 <option value="10">2.50 m</option>
                 <option value="11">2.75 m</option>
                 <option value="12">3.0 m</option>
                 <option value="13">3.25 m</option>
                 <option value="14">3.50 m</option>
                 <option value="15">3.75 m</option>
                 <option value="16">4.0 m</option>
                 <option value="17">4.25 m</option>
                 <option value="18">4.50 m</option>
                 <option value="19">4.75 m</option>
      <option value="20">5 m</option>
             </select>
               <?php } ?> 


Merci
Opencart : 2.0.1.1
VQmod : 2.5.1

Hébergeur : votresite.ca
site web : cotonflanelle.com
site test : mireillebrousseau.com -> template kingdtore de Theme Global
Enhanced VQMod Manager and Editor 1.0
Admin Enhanced Products 2.x
Customers Also Viewed / Purchased (2in1)
Export-import 2.0.x-2.26
mirbrou
 
Messages: 43
Inscrit le: 03 Avr 2015, 05:50


Retour vers Soutien Général

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron
Copyright © 2009-2013 OpenCart France - Tous droits réservés