Résolu [PHP]Verrouiller et dévérouiller l'appui bouton

Solutions (11)
Tags :
  • photo
  • Php
  • Pointer
  • Echo
  • Programmation
, Maître Yoda |
Bonjour à tous.
J'ai sur une page php 4 boutons, avec pour attribut :

  1. <tr>
  2. <td><button name='bouton-1' style=" cursor:pointer;"><?php if(isset($_SESSION['photo'][0]) && !empty($_SESSION['photo'][0]) && $_SESSION['photo'][0] != "ex.png"){echo '<img class="image" src="./petit/'.$_SESSION['photo'][0].'"/><input type="hidden" name="image-1" value="'.$_SESSION['photo'][0].'"/>';}else{echo ($bouton_position1);} ?></button></td>
  3. <td><button name='bouton-2' style=" cursor:pointer;"><?php if(isset($_SESSION['photo'][1]) && !empty($_SESSION['photo'][1]) && $_SESSION['photo'][1] != "ex.png"){echo '<img class="image" src="./petit/'.$_SESSION['photo'][1].'"/><input type="hidden" name="image-2" value="'.$_SESSION['photo'][1].'"/>';}else{echo ($bouton_position2);} ?></button></td>
  4. <td><button name='bouton-3' style=" cursor:pointer;"><?php if(isset($_SESSION['photo'][2]) && !empty($_SESSION['photo'][2]) && $_SESSION['photo'][2] != "ex.png"){echo '<img class="image" src="./petit/'.$_SESSION['photo'][2].'"/><input type="hidden" name="image-3" value="'.$_SESSION['photo'][2].'"/>';}else{echo ($bouton_position3);} ?></button></td>
  5. <td><button name='bouton-4' style=" cursor:pointer;"><?php if(isset($_SESSION['photo'][3]) && !empty($_SESSION['photo'][3]) && $_SESSION['photo'][3] != "ex.png"){echo '<img class="image" src="./petit/'.$_SESSION['photo'][3].'"/><input type="hidden" name="image-4" value="'.$_SESSION['photo'][3].'"/>';}else{echo ($bouton_position4);} ?></button></td>
  6. </tr>


lors de l'appui d'un de ses 4 boutons, j’exécute se bout de code se trouvant dans une autre page php :

  1. $session =& JFactory::getSession();
  2. for ($i = 1; $i < 5; $i++ ) {
  3. if(isset($_REQUEST['bouton-'.$i])){
  4. $session->set( 'bouton', $i ) ;
  5.  
  6. }
  7.  
  8. header('location:index.php?option=com_jumi&fileid=8&Itemid=9&lang='.$lang);
  9. }


Je voudrais savoir comment rendre inactif les boutons par exemple 2, 3 et 4 si le bouton 1 n'est pas sélectionne... Si vous voyez ou je veux en venir =)

Puis-je faire cela en php ? ou dois-je obligatoirement utiliser du javascript ?

Je vous remercie par avance.
Contenus similaires
Meilleure solution
partage
|
Perso je fais comme ça:

  1. if (condition) {
  2. $bouton = "disabled=\"disabled\"";
  3. } else {
  4. $bouton = "";
  5. }
  6.  
  7. echo "
  8. <bouton name=\"bouton-1\" $bouton>
  9. ";

  • Commenter cette solution |
Score
0
òh
òi
, Maître Yoda |
Meilleure réponse sélectionnée par danydan01.
  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
Ou je viens de pensser a quelque chose mais dite moi ci cela est possible à réaliser.
Si je fais juste dans une variable php :

  1. $message = '<button name="bouton-1" style="cursor:pointer;">'; // si bouton actif
  2. $message = '<button name="bouton-1" disabled="disabled" style="cursor:pointer;">'; // si bouton inactif


et j'ajoute cela dans mon html comme ceci :

  1. /*<button name='bouton-1' style=" cursor:pointer;">*/<?php echo($message); if(isset($_SESSION['photo'][0]) && !empty($_SESSION['photo'][0]) && $_SESSION['photo'][0] != "ex.png" ){echo '<img class="image" src="./Appli/images/positions/petit/'.$_SESSION['photo'][0].'"/><input type="hidden" name="image-1" value="'.$_SESSION['photo'][0].'"/>';}else{echo ($bouton_position1);} ?></button>


Faire un truc du genre...
  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
Re bonjour,

Donc si j'ai bien compris il faut que je réécrive la ligne suivant les boutons déjà sélectionne ?!
Je comptais faire comme ceci :

  1. if($_SESSION['photo'][0] == NULL){
  2. // la je met mes lignes de code html dans des variables php que j'afficherais dans ma page au bonne endroit.
  3. }


Mais le soucie, comment faire pour mettre une de ses lignes dans une variable php en sachant que j'ai déjà du html et php mélanger...

  1. <button name='bouton-1' style=" cursor:pointer;"><?php if(isset($_SESSION['photo'][0]) && !empty($_SESSION['photo'][0]) && $_SESSION['photo'][0] != "ex.png"){echo '<img class="image" src="./Appli/images/positions/petit/'.$_SESSION['photo'][0].'"/><input type="hidden" name="image-1" value="'.$_SESSION['photo'][0].'"/>';}else{echo ($bouton_position1);} ?></button>
  • Commenter cette réponse |
Score
0
òh
òi
|
crazycat@idn a dit :
@aztequemedia : Je ne vois pas l'intérêt d'allourdir la page avec du JS au chargement alors que cela peut être fait côté serveur.

@danydan01 : C'est tout à fait faisable (en fait c'est disabled (Button tag)), et tu peux aussi ne pas mettre le bouton (juste une image) s'il n'est pas utilisable.
Par ailleurs, je pense que tu devrais t'orienter plutôt vers le <input type="image">.


Salut,
Je ne pense pas que cela alourdirait vraiment la page, ceci dit c'est une solution envisageable que je voulais juste mensionner.

Cela permeterai d'allouer une clase a un element ou pas de facon dynamique sans avoir a rechargé la page a chaque validation d'un bouton, ce que je trouve lourd.

Evidement tout dépend de l'application que l'on programme. ;) 
  • Commenter cette réponse |
Score
0
òh
òi
|
Non, c'est soit disabled="disabled" soit rien.
Il faut donc que ton status prenne la valeur complète ou soit vide.
  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
J'ai un gros soucie, je sais pas si c'est du à la fatigue mais bon...
J'ai coder comme ceci :

  1. <td><button name='bouton-4' disabled="'.$status.'"...

en mettant bien le $status à disabled ou a enabled, mais cela ne fonctionne pas et je voie pas pourquoi...
  • Commenter cette réponse |
Score
0
òh
òi
|
@aztequemedia : Je ne vois pas l'intérêt d'allourdir la page avec du JS au chargement alors que cela peut être fait côté serveur.

@danydan01 : C'est tout à fait faisable (en fait c'est disabled (Button tag)), et tu peux aussi ne pas mettre le bouton (juste une image) s'il n'est pas utilisable.
Par ailleurs, je pense que tu devrais t'orienter plutôt vers le <input type="image">.
  • Commenter cette réponse |
Score
0
òh
òi
|
Salut,
Tu pourrais aussi le faire avec la librairie jquery (javascript).
  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
Oui effectivement c'est après chargement.
Enfaite l'utilisateur va venir cliquer sur le 1er bouton, cela va le rediriger vers la page de choix d'une image, une fois l'image choisi, redirection vers la page des boutons, ou la, le bouton suivant sera actif.

Cela est faisable avec ce que tu m'as dit : 'disable="disable"' ?
  • Commenter cette réponse |
Score
0
òh
òi
|
Si c'est sur un rechargement de la page, tu peux en php ajouter 'disable="disable"' dans tes boutons.
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS