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 :

[Formulaire]probléme de formulaire avec IE.


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 196
    Points : 99
    Points
    99
    Par défaut [Formulaire]probléme de formulaire avec IE.
    bonjour, bonjour!

    je post pour un problème surement bateau, mais je ne trouve pas de solutions.

    j'ai un menu sous forme de formulaire qui passe parfaitement sous FireFox mais pas du tout sous IE ...

    j'utilise la méthode post pour envoyer au serveur la page à renvoyer! Je pense qu'IE envoi toujours la même valeur ... et je ne vois pas pourquoi !

    voila le code de ma page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>site test</title>
    <script type="text/JavaScript">
    <!--
    function MM_preloadImages() {
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    }
    //-->
    </script>
    <style type="text/css">
    <!--
    .Style1 {
    	font-size: 24px;
    	font-weight: bold;
    }
    -->
    </style>
    </head>
    <body onload="MM_preloadImages('img/questionson.png','img/accueilon.png','img/presentationon.png','img/coachson.png','img/formationson.png','img/formationcontinueon.png','img/formationaccompagnementon.png','img/caredrepriseon.png','img/partenaireson.png','img/temoignageson.png','img/questions.png','img/accueil.png','img/presentation.png')">
    <table width="800" border="0" cellpadding="0" cellspacing="0">
      <tr>
        <td height="100" colspan="2"><img src="img/bandeau.png" alt="Bandeau" width="800" height="164" longdesc="http://www.saint-ange.fr" />
       </td>
      </tr>
      <tr>
        <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
         <td width="208" height="40" background="img/menuH.png">&nbsp;</td>
         <td width="592" background="img/fondCorpH.png">&nbsp;</td>
        </tr>
        <tr>
         <td align="center" valign="top" background="img/menuC.png">
         <table border="0" cellpadding="0" cellspacing="0" >
         <form method="post">
         <tr><td align="right">
    <INPUT id='img1' TYPE="image" name="page" value="accueil" SRC="img/accueil.png" WIDTH=194 HEIGHT=36 BORDER=0 ALT="Accueil"
    onMouseover="document.getElementById('img1').src='img/accueilon.png'"		onMouseout="document.getElementById('img1').src='img/accueil.png'"/>
         </td></tr>
         <tr><td align="right">
    <INPUT id='img2' TYPE="image" name="page" value="presentation" SRC="img/presentation.png" WIDTH=194 HEIGHT=36 BORDER=0 ALT="..."
    onMouseover="document.getElementById('img2').src='img/presentationon.png'"	onMouseout="document.getElementById('img2').src='img/presentation.png'"/>
         </td></tr>
         <tr><td align="right">
    <INPUT id='img3' TYPE="image" name="page" value="tst" SRC="img/tst.png" WIDTH=194 HEIGHT=36 BORDER=0 ALT="tst"
    onMouseover="document.getElementById('img3').src='img/tston.png'"	onMouseout="document.getElementById('img3').src='img/tst.png'"/>
         </td></tr>
       </form>
      </table>			
     </td>
       <td align="center" background="img/fondCorpC.png">
        <table width="570" border="0" cellpadding="0" cellspacing="0">
         <tr><td>	
               <!-- =============================== -->	
               En construction ...
         </td></tr>
        </table>
       </td>
      </tr>
      <tr>
       <td height="40" background="img/menuB.png">&nbsp;</td>
       <td background="img/fondCorpB.png">&nbsp;</td>
      </tr>
     </table>	
    </td></tr></table>
    </body></html>
    Le problème et le suivant :
    quand je suis sous FF, suivant le bouton cliqué la page correspondante est renvoyé. Mais sous IE, seul la première page est renvoyé quelque soit le bouton cliqué ...

    si quelqu'un à une solution/explication à ce petit problème !!
    Merci d'avance.

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 887
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 887
    Points : 16 324
    Points
    16 324
    Par défaut
    Le name est identique et c'est le name qui est envoyé en POST ...

    Vire tes value et remplace les par des name.

  3. #3
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 196
    Points : 99
    Points
    99
    Par défaut
    je vais tester mais cela me surprends! car dans mon script php je choisissais ma page grâce au code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    switch ($_POST['page'])
    {
      case 'accueil' :
        include('accueil.html');
        break;
      case 'presentation' :
        include('presentation.html');
        break;
      case 'tst' :
        include('tst.html');
        break;
      default :
        include('accueil.html');
        break;
    }
    je me demande alors sur quel variable je vais pouvoir choisir ma page dans ce cas !!

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 887
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 887
    Points : 16 324
    Points
    16 324
    Par défaut
    Tu peux faire comme ça .. :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    switch($_POST['page']){
       default :
          if(file_exists($_POST['page'].".html")){
             include($_POST['page'].".html");
          } else {
             include("accueil.html");
          }
       break;
    }
    Comme ça tu n'as pas besoin de faire un case par page.

    Et c'est justement une différence entre IE et Firefox qui n'envoient pas les mêmes valeurs en POST. IE n'envoie que les name.

  5. #5
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 196
    Points : 99
    Points
    99
    Par défaut
    je ne comprends pas la solution que tu propose,

    comment tester la variable $_POST['page'] si elle n'existe plus ?

    edit : si IE n'envoie que les 'name', il faut alors que je test les 'name' un par un ? ...

  6. #6
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 887
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 887
    Points : 16 324
    Points
    16 324
    Par défaut
    Citation Envoyé par Bisûnûrs
    Vire tes value et remplace les par des name.
    Sinon tu as ça :
    http://php.developpez.com/faq/?page=...ire_deuxsubmit

  7. #7
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 196
    Points : 99
    Points
    99
    Par défaut
    oui je me suis aidé du lien que tu donne. Je vais donc me résigner à faire une liste interminable de if ... elseif (merci IE ...)

    moi qui suis contre ce type de code ...

    en tout cas merci de tes réponses 'Bisûnûrs' !!

  8. #8
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 196
    Points : 99
    Points
    99
    Par défaut
    Après test, si je vire les values et que je met un 'name' différent à chaque 'input', ça ne marche plus ni sur IE ni sur FF ... .

    edit : je pense que le problème vient pas du php mais bien du code HTML puisque seul EI me fait planter mon script !!

    le poste à été déplacé mais je ne pense pas trouver de solutions sur ce forum(forum php) .
    enfin si quelqu'un as une idée !! je suis preneur !

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

Discussions similaires

  1. [2.x] [Twig][Formulaire] Problème d'affichage avec une boucle
    Par ccomarvin dans le forum Symfony
    Réponses: 1
    Dernier message: 31/01/2013, 10h57
  2. Formulaires : problème avec les slashes et les quotes
    Par GarGamel55 dans le forum Langage
    Réponses: 1
    Dernier message: 12/10/2005, 15h59
  3. Réponses: 1
    Dernier message: 25/09/2005, 11h09
  4. Réponses: 6
    Dernier message: 19/05/2005, 11h06
  5. Réponses: 7
    Dernier message: 19/10/2004, 16h12

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