IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

php conditions if elseif


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Points : 135
    Points
    135
    Par défaut php conditions if elseif
    Bonjour,
    Je monte un site de service, j'ai :
    1 page services
    1 page options
    Je souhaite ouvrir la page options que si un service est commandé avec ce code (le forfait est bien dans le panier):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if ( in_array($item['id'], array('forfait01','forfait02','forfait03','forfait024','forfait05','forfait06','forfait07','forfait08','forfait09','forfait10','forfait11','supp01'), true )){
    				echo ('
     
    				<tr>
    				<td colspan=3>
    				<a class= "btn btn-primary btn-sm" href= "options.php" role= "button" > Voir les options</a>
    				</td>
                    </tr>
     
    				');
    ca fonctionne parfaitement
    ma page est ouverte donc le visiteur peut ajouter une option, et là commencent les problèmes
    J'ai ce code (aucun forfait dans le panier) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    elseif (!in_array($item['id'], array('forfait01','forfait02','forfait03','forfait024','forfait05','forfait06','forfait07','forfait08','forfait09','forfait10','forfait11'), true )){
    				echo ('
    				<tr>
    				<td colspan=3>
    				vous ne pouvez pas choisir une option seule
    				</td>
                    </tr>
    				');
     
    			}
    Dans un 1er temps j'ai le message "Vous ne pouvez choisir une option seule" alors que j'ai à la fois option et forfait...
    Ca se règle une fois que je suis passé par la page modifier tout fonctionne normalement apres....

    Est ce un problème de raffraichissement de page ?
    Est ce que ça à une chance de fonctionner dans ce cas ?

    Merci à vous

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    affiche $item['id'], tu verras ce qu'il contient.

    C'est la base du débogage.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Points : 135
    Points
    135
    Par défaut
    Bonjour,

    J'ai un peu avancé, j'ai travaillé sur ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $a  = array('forfait01', "forfait02", "forfait03", "forfait04", "forfait05","forfait06", "forfait07", "forfait08", "forfait09", "forfait10", "forfait11", "supp01");
    				if (in_array($item['id'],$a )) {
    				echo tab(3) . "<input type='$inputType' $src id='jcart-paypal-checkout' name='jcartPaypalCheckout' value='{$config['text']['checkoutPaypal']}' $disablePaypalCheckout />\n";} 
    				else {
    				echo $item['id'];}
    Je souhaite juste faire en sorte que si le client ne commande pas de forfait, le bouton PayPal ne s'affiche pas hors avec ce code, il est pris en compte seulement le dernier élément ajouté au panier, si le dernier élément est "forfaitxx" ça fonctionne, par contre si le dernier élément est "optionxx", le code ignore le "forfaitxx" et donc le bouton n'est pas affiché.

    sinon avec j'ai bien l'"optionxx" qui s'affiche

    Bonne journée

  4. #4
    Invité
    Invité(e)
    Par défaut
    optionxx, forfaitxx...

    Ce n'est pas ça qui va nous aider.
    Donné des valeurs concrètes.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Points : 135
    Points
    135
    Par défaut
    Bonjour,

    Je pensais avoir été assez clair, mais à priori ce n'est pas le cas.

    En fait je fais un bon de commande avec des produite "Forfait" qui ont un identifiant forfait01, forfait02 etc.... et des produits "Options" avec identifiants option01, option02....

    Ma recherche était de rendre impossible l'achat d'une option seule donc en clair si pas de Forfait, pas d'Option.....

    j'ai fini par trouver la solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $a  = array('test','forfait01', "forfait02", "forfait03", "forfait04", "forfait05","forfait06", "forfait07", "forfait08", "forfait09", "forfait10", "forfait11", "supp01");
    				if (in_array($item['id'],$a )) {
    					$empty=1;}//je determine si il y a un Forfait ou non
    et plus bas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    if ($item['id'] && $empty) {
    				?>
                    <div style="background-color: #999; margin:5px">&nbsp;<br />
                    <center><h3>Ici je mets les tetes et liens qui vont bien si il y a au moins un forfait.</h4></center>
                    <?php
    				echo tab(3) . "<input type='$inputType' $src id='jcart-paypal-checkout' name='jcartPaypalCheckout' value='{$config['text']['checkoutPaypal']}' $disablePaypalCheckout />\n";} 
    				else {
    					?>
                        <h3 style="color:red" class="text-alert"><br />&nbsp;<br />
                        <?php
    				echo 'ou ici le texte si il n'y a pas de forfait : Le panier doit contenir au moins 1 forfait !';}
    				?>
    Quoi qu'il en soit merci à vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP 5.0] PHP condition de déplacement
    Par monkey_carnaval dans le forum Langage
    Réponses: 3
    Dernier message: 01/03/2014, 19h25
  2. les conditions If ElseIf THEN
    Par tibss dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/07/2013, 10h38
  3. Condition if - elseif contenant une url
    Par AurelienNF dans le forum Langage
    Réponses: 2
    Dernier message: 01/09/2010, 12h06
  4. [MySQL] php condition if
    Par stefanelle dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 23/02/2009, 17h24
  5. [php]Condition if
    Par yoda7666 dans le forum Langage
    Réponses: 17
    Dernier message: 06/12/2005, 12h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo