Recupe de variable dans un form avec php

step Messages postés 27 Statut Membre -  
Bobinours Messages postés 2903 Statut Membre -
Je veux recuperer la valeur de $Impexp mais ca ne marche pas avec le type "image"...
Y-t-il une soluce ?
Merci

Ca ca marche pas
print('<input type="image" name="Impexp" value="Imp" src="../ImgLG/Imprimer.gif">&nbsp;');

print('<input type="image" name="Impexp" value="Exp" src="../ImgLG/Exporter.gif">&nbsp;');

Et ca ca marche ...........

print('<input type="submit" name="Impexp" value="Imp" >&nbsp;');

print('<input type="Submit" name="Impexp" value="Exp">&nbsp;'

3 réponses

  1. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    Essayes de faire comme ça :

    print('<input type="hidden" name="Impexp" value="Imp">&nbsp;');

    print('<input type="image" src="../ImgLG/Exporter.gif">&nbsp;');

    L'élément de formulaire "Image" ne sert que à valider le formulaires... pour passer des valeurs, utilises l'élément hidden + image !
    0
    1. step Messages postés 27 Statut Membre
       
      Mon pb , c'est que j'ai 2 types 'images' qui pointent vers la meme nom de variable
      avec comme valeur : Imp ou Exp
      0
  2. Jeff
     
    Le cojnsortium W3C ne définit que ces 3 attributs pour la balise image :

    <input type=image name=point src="map.gif">

    Pour y remédier, tu peux faire comme ça :

    print('<input type="image" name="Imp" src="../ImgLG/Imprimer.gif">&nbsp;');
    print('<input type="image" name="Exp" src="../ImgLG/Exporter.gif">&nbsp;');

    Et après un :
    <?
    if (isset($Imp)) {}
    else if (isset($Emp)) {}
    else {}
    ?>

    Si tu tiens absolument à ta variable Impexp, la solution est :
    print('<input type="image" name="ImpExp[Imp]" src="../ImgLG/Imprimer.gif">&nbsp;');
    print('<input type="image" name="ImpExp[Exp]" src="../ImgLG/Exporter.gif">&nbsp;');

    Et après tu parses le tableau ImpExp pour connaître la valeur de la clé...

    Voili voilou :)
    0
    1. step Messages postés 27 Statut Membre
       
      Merci
      J'va faire un essai
      0
  3. Bobinours Messages postés 2903 Statut Membre 504
     
    Tu pourrais utiliser "onMouseOver" pour affecter une variable hidden:

    <input type="image" name="Impexp" value="Imp" src="Hlpbell.gif" onMouseOver="document.forms[0].hidevar.value = 'IMPRESSION'">
    <input type="image" name="Impexp" value="Exp" src="Hlpbell.gif" onMouseOver="document.forms[0].hidevar.value = 'EXPORTER'">

    Mais cela ne marche pas avec Netscape :(( toujours lui.

    Je te suggere plutot de faire deux inputs avec des noms differents:

    <P><input type="image" name="Imp" src="Hlpbell.gif">
    <P><input type="image" name="Exp" src="Hlpbell.gif">

    La "value" n'est pas necessaire dans ce cas.
    Ensuite tu testes dans la page suivante si :

    if ($HTTP_POST_VARS["Imp_x"]) {print "IMPRESSION<P>";}
    if ($HTTP_POST_VARS["Exp_x"]) {print "EXPORTER<P>";}
    // voir phpinfo()

    Ici je teste si la variable est NOT NULL ou VRAI alors que j'aurais voulu DEFINI, mais defined() ne marche pas, je suis pas aller plus loin car les valeurs de X et Y commence a 1.

    Ca me parait etre une solution tout a fait correcte.

    -= Bobinours =-
    0