FRED0181
Messages postés6Date d'inscriptiondimanche 22 octobre 2006StatutMembreDernière intervention10 décembre 2008
-
8 déc. 2008 à 12:28
FRED0181
Messages postés6Date d'inscriptiondimanche 22 octobre 2006StatutMembreDernière intervention10 décembre 2008
-
10 déc. 2008 à 20:02
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.
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201116 10 déc. 2008 à 19:32
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)
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201515 8 déc. 2008 à 13:21
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"
$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);
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201515 8 déc. 2008 à 14:19
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 !
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.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201515 8 déc. 2008 à 14:32
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 ... )
FRED0181
Messages postés6Date d'inscriptiondimanche 22 octobre 2006StatutMembreDernière intervention10 décembre 2008 8 déc. 2008 à 14:40
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.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201515 8 déc. 2008 à 14:45
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
FRED0181
Messages postés6Date d'inscriptiondimanche 22 octobre 2006StatutMembreDernière intervention10 décembre 2008 10 déc. 2008 à 20:02
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!!