begin process at 2012 05 29 17:04:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Fonctionnement d'une propriété d'un navigateur

 > 

problème liste lié avec AJAX et navigateur et doctype


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème liste lié avec AJAX et navigateur et doctype

lundi 8 décembre 2008 à 12:28:15 | problème liste lié avec AJAX et navigateur et doctype

FRED0181

Bonjour,

J'ai creer une une page en PHP/AJAX qui comporte deux listes déroulante liées.(listes remplies par BD Mysql)

Lorsque j'ai testé ma page, les listes liées ne marchées pas ni sur firefox, ni sur IE.
J'ai remarqué par la suite que le problème provené du doctype de la page, en effet après avoir supprimer le doctype, ma page marche sur firefox, mais pas sous IE, où là, les listes ne sont plus liées, l'ajax ne fonctionne pas.

Je sèche un peu...si quelqu'un peu m'aider!!

Merci
lundi 8 décembre 2008 à 13:21:15 | Re : problème liste lié avec AJAX et navigateur et doctype

Bul3

Membre Club


le doctype influe, c'est sûr
ça n'a, par contre, aucun rapport avec ajax, les listes liées....

si en mettant un doctype ça ne fonctionne avec aucun navigateur,
   c'est que les "règles" liés à ce doctype ne sont pas respectées
   ( et si en en mettant un autre, ça ne fonctionne pas avec tel
     ou tel navigateur : même explication )

un exemple, ajax avec listes liées qui fonctionne
avec <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
( mais si on mettait
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
ou
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
ou ....
l'exemple c'est ici

il n'y aurait pas grand chose à voir pour que ça fonctionne....
si cela ne fonctionne pas.... : pas testé ;o) )

regarde les erreurs ( avec FF, car doit être lié au css, et IE est...
    disons "léger" au niveau signalement à ce niveau )

Chrome
contrôler page actuelle / Options pour développeurs
/ Console Javascript
FireFox
Outils / Console d'erreurs
et mieux : télécharger FireBug
Internet
Explorer
activer le deboggage : Outils/options Internet/Avancés
dans la liste, sous "Navigation" : décocher
o Afficher une notification de chaque erreur de script
o Désactiver le débogage de Scripts (Internet Explorer)
et mieux : télécharger le Debogger IE
voir aussi : DebugBar et Companion JS
K-Meleon
Outils / Console d'erreurs
Opera
Outils / Avancé / Console d'erreurs
Safari
Debug / Show JavaScript Console
° modifier Fichier com.apple.Safari.plist situé dans le
répertoire : Support:\Documents and Settings\utilisateur
\Application Data\Apple Computer\Safari\Preferences\
y ajouter <key>IncludeDebugMenu</key>
<true/>

par exemple, dans un style="height:10;.... "
ça ne va pas plaire ! il faut style="height:10px;... "

et sans ton code... difficile de dire où est l'erreur....

Cordialement

          [mon Site] [M'écrire] Bul         

lundi 8 décembre 2008 à 14:12:24 | Re : problème liste lié avec AJAX et navigateur et doctype

FRED0181

Voiçi le code et merci pour ta réponse :

J'ai éffacé mes identifiant de conection!!




<!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" xml:lang="fr" >

<head>
<meta http-equiv="content-Type" content="text/html; charset=utf-8" />

<link rel="shortcut icon" href="favicon.ico" />
<style type="text/css">
@import url("styles.css");
</style>
<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<script type="text/javascript">
function xmlhttp()
   {  var x;
      try         {  x = new ActiveXObject("Microsoft.XMLHTTP");   }
      catch (e)   {  try         {   x = new ActiveXObject("Msxml2.XMLHTTP");   }
                     catch (e)   {   try         {   x = new XMLHttpRequest();   }
                                     catch (e)   {   x=false;   }
                                 }
                  }
      return x;
   }
   function appel()
   {   var xml = xmlhttp();
      if(!xml)
             {   alert("XmlHttpRequest non supporté");   }
      else   {   xml.onreadystatechange = function()
                 {   if(xml.readyState==4)
                     {   var opt=xml.responseText.split("\t");
                         tb2.length=0;
                         for ( var n=1;n<opt.length;n++ )
                         {   tb2.length++;
                             tb2.options[tb2.length-1].text=opt[n];
                         }
                     }
                  }
                  xml.open("GET", "ajax/ajax2.php?annee="+tb1.options[tb1.selectedIndex].text, true);
                  xml.send(null);
             }
   }     
 
</script>
         
</head>

<body onLoad='appel();'>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td height="978" align="left" valign="top" class="background-repeat">

  <table width="978" border="0" cellpadding="0" cellspacing="0" align="center">
  <tr>
    <td height="141" colspan="3" align="left" valign="top" class="bandeau"></td>
  </tr>
  <tr>
    <td width="198" height="501" align="left" valign="top" class="gauche">
    <!--include animation -->
   <?php include "include/anim.inc.php"; ?>
    <!--fin include animation -->
    </td>
    <td width="667" height="501" align="left" valign="top" class="infos">
    <div id="cadre" class="centre_fond">
    <p align="justify"><span class="majVERT">S</span><span class="texteNormalVerdana12">élection :</span><br>
    </p>
    <table width="100%" border="0">
     
      <form name="formulaire" method="get" action="test_ajax/selection2.php">
      <tr>
        <td width="100" align="left" valign="top" class="texteNormalVerdana12">Année</td>
        <td width="150" align="left" valign="top" class="texteNormalVerdana12">Mois</td>
        <td width="350" align="left" valign="top" class="texteNormalVerdana12">&nbsp;</td>
      </tr>
      <tr>
        <td width="100" align="left" valign="top"><span class="liste1">
<?php

  $co= mysql_connect("", "", "");
  $dbnom="";
  $db=mysql_select_db($dbnom,$co);
  mysql_query("SET NAMES 'utf8'");
  //==========================================
  //== on affiche dans un select du champs 1 ==
  //==========================================
  $res=mysql_query("SELECT annee FROM photos GROUP BY annee",$co);
  $max=@mysql_num_rows($res);
 
 
?>
        
<select   name="tb1" id="tb1" size=1 onChange='appel();'>
<option selected="selected" value="Toutes">Toutes</option>
<?php
     for ($nb=0;$nb<$max;$nb++)
   {  $i=mysql_result($res,$nb,"annee");
      echo '<option>'.$i.'</option>';
    }
?>
</select></span></td>

        <td width="150" align="left" valign="top">
<select name="tb2" size=1 class="liste2" id="tb2" onChange='appel2();'>
<option selected="selected" value="Tous">Tous</option>
</select></td>
        <td width="350" align="left" valign="top">
<?php    mysql_close($co); ?></td>
      </tr>
      <tr>
        <td><input name="button" type="submit" class="button_frm" id="button" value="Envoyer"></td>
        <td>&nbsp;</td>
        <td align="center" valign="top">&nbsp;</td>
      </tr>
    </table>
    <p align="justify"><br />
    </select>
    </p>
    </div></td>
    <td width="113" align="left" valign="top" class="droite"></td>
  </tr>
  <tr>
    <td height="8" colspan="3" align="left" valign="top" class="fondmenu"></td>
  </tr>
  <tr>
    <td height="51" colspan="3" align="left" valign="top" class="">
    <!--include menu -->
   <?php include "include/menu.inc.php"; ?>
    <!--fin include menu -->
    </td>
  </tr>
  <tr>
    <td height="99" colspan="3" align="left" valign="top" class="footer"></td>
  </tr>
</table>

</td>
</tr>
</table>
</body>
</html>

lundi 8 décembre 2008 à 14:19:10 | Re : problème liste lié avec AJAX et navigateur et doctype

Bul3

Membre Club

certes, certes....
et comment on teste ?
ou comment devine-t-on
le contenu des $variables,
celui de ta base de données,
celui des include en php ...
met nous donc UN EXTRAIT de la page html résultante
UN EXTRAIT, le nécessaire, toute le nécessaire... mais pas plus ! 
sinon, je t'assure que c'est décourageant !

          [mon Site] [M'écrire] Bul         

lundi 8 décembre 2008 à 14:27:23 | Re : problème liste lié avec AJAX et navigateur et doctype

FRED0181

Je comprends!!

Il n'y a aucune erreur d'include php ni de liaison avec ma base de données.

Meilleure solution :
Tous ce passe ici sur mon site : [ Lien ]

J'ai donc en ligne une page php (selection.php) sans doctype, les listes fonctionnent sous firefox mais pas sous IE.
Et donc en rajoutant un doctype, elles ne fonctionne plus.










lundi 8 décembre 2008 à 14:32:46 | Re : problème liste lié avec AJAX et navigateur et doctype

Bul3

Membre Club
donc, pour toi, c'est à moi de faire l'effort,
d'aller sur ton site, de décortiquer tout pour en extraire le nécessaire
et de te fournir la solution....
( d'autant que je crains que comme d'hab, foultitude de .js, de .css ... de [i]frame,
  de flash... et autres joyeusetés ... )

          [mon Site] [M'écrire] Bul         

lundi 8 décembre 2008 à 14:40:42 | Re : problème liste lié avec AJAX et navigateur et doctype

FRED0181

Tu me demande de fournir des éléments pour comprendre, il n'y a pas mieux que te donner une adresse où tout est en ligne.

Je ne peut pas posté ici plus d'élements qui permettraient de comprendre ce problème.

Je ne t'es pas demandé de trouver la solution, tu es venu de toi même répondre à ce post pour je crois "aider les persones qui postent'.

Je n'attends pas qu'une personne passe son temps à faire l'effort de me donner la solution toute cuite, ma démarche est juste de montrer mon problème de façon concrète et au cas où une personne à rencontré le même problème, alors elle me répondra rapidement.

Il me semble que de voir le résultat en ligne est quelque chose de très rare sur les forums.


lundi 8 décembre 2008 à 14:45:50 | Re : problème liste lié avec AJAX et navigateur et doctype

Bul3

Membre Club
c'est comme tu le sens...
>>le résultat en ligne est quelque chose de très rare
lance ton appli,
visualise la source ( affichage / code source )
ou fichier / enregistrer sous
puis extrait le nécessaire

          [mon Site] [M'écrire] Bul         
généralement, mettre en forme sa question fait souvent
    qu'on résout seul d'ailleurs.
mercredi 10 décembre 2008 à 19:32:11 | Re : problème liste lié avec AJAX et navigateur et doctype

PetoleTeam

Membre Club
Réponse acceptée !
Bonjour à tous,
eh ben ! pas superbe ta fonction appel()

C'est quoi tb1 et tb2, les SELECTs à la lecture de ton code...
<select name="tb1" id="tb1" size=1 onChange='appel();'>

Ils s'y retrouvent comment les navigateurs, pour connaitre l'objet référencé ?

Certes tu as mis un id et un name mais tout de même !

Les consoles d'ERREUR citées par TheBul3 ne t'ont rien indiqué ???

Une façon de faire...
function appel() {
  var xml = xmlhttp();
  //-- Recup des objets
  var O_tb1 = document.getElementById( 'tb1');
  var O_tb2 = document.getElementById( 'tb2');

  if (!xml) {
    alert("XmlHttpRequest non supporté");
  }
  else {
    xml.onreadystatechange = function() {
      if (xml.readyState == 4) {
        var opt = xml.responseText.split("\t");
        O_tb2.length = 0;
        for (var n = 1; n < opt.length; n++) {
          O_tb2.length++;
          O_tb2.options[ O_tb2.length - 1].text = opt[n];
        }
      }
    }
    xml.open("GET", "ajax/ajax2.php?annee=" + O_tb1.options[O_tb1.selectedIndex].text, true);
    xml.send(null);
  }
}

il me semble que c'est plus clean... corriges peut être déjà cela.
;O)
mercredi 10 décembre 2008 à 20:02:37 | Re : problème liste lié avec AJAX et navigateur et doctype

FRED0181

Salut!!

Je viens d'essayer ta fonction appel() et çà marche!!!
Nickel!!!
Alors en fait c'était donc bien la récupération des objets qui était était défaillante!!

Je te remercie beaucoup pour ta réponse efficace.


Cette discussion est classée dans : problème, page, ajax, listes, doctype


Répondre à ce message

Sujets en rapport avec ce message

DHTMLGoodies [ par corsica ] Salut à tous.Petit problème à soumettre :J'ai une page PHP qui utilise AJAX par le biais du FrameWork DHTMLGoodies ( très bien au passage ).Le p Problème d'id dans la page mère [ par roro59650 ] Bonjour tout le monde ! Une nouvelle journée, un nouveau problème !! Comme je kiff à donf Problème avec listes liées AJAX [ par Vins974 ] Bonjour ,J'ai un problème.. Je crée un site internet, et j'ai utilisé AJAX. Pour pouvoir effectuer trois listes liées.. Elles sont donc chacune dépend Actualisation de liens lightwindow/ajax [ par niko008 ] Salut,Mon problème est le suivant:J'ai une page dans laquelle je charge différentes galeries d'image  dans un même div avec Ajax (C'est à dire une gal Problème d'affichage dans AJAX [ par cool0501 ] Bonjour tout le monde,J'aurai voulu savoir si quelqu'un connaissait une fonction ou une méthode permettant d'afficher l'intégralité d'une variable (av Télécharger un fichier en ajax [ par LuckyNut ] Bonjour à tous, Je vous explique mon problème : J'ai un script php qui traite le téléchargement de fichiers. Le problème est que pour des fichiers d Problème avec IE de javascript [ par matdev62 ] Voilà mon problèmej'ai une page avec un formulaire lorsque que je suis sur certain champ une page contenant un tableau de choix s'ouvre dans une div.l Chemin vers une page PHP [ par Peoxus ] Bonjour, Je ne sais pas si c'est bien ici que je dois poser ma question stupide. J'ai suivi le tuto http://www.tutorialspoint.com/ajax/ajax_database Récupération valeur input à partir d'une deuxième page avec onkeyup [ par ircland ] Bonjour, je vous explique mon projet, je procède à l'insertion d'une fonction de recherche en ajax à partir de la liste des membres. Je ne programm Menu déroulant [ par artax1977 ] Bonjour à tous,Tout d'abord tous mes meilleurs voeux pour l'année nouvelle...J'utilise le script "javascriptfr_MENU-DEROULANT". C'était absolument cec


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,056 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales