balgrim86
Messages postés4Date d'inscriptiondimanche 23 novembre 2008StatutMembreDernière intervention26 novembre 2008
-
25 nov. 2008 à 17:34
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 2015
-
26 nov. 2008 à 11:21
Bonjour,
je me permet de vous solliciter car j'ai un problème avec le code suivant. En effet il fonctionne parfaitement sous IE6 mais pas sous firefox 3. Je localise le problème au niveau de document.getElementById('id_categorie').value car si je le remplace par une valeur entiere (ex.: "1") ca fonctionne. Le but de ce code est de recuperer l'id dynamiquement d'une table en fonction de sa table parente situer dans la liste deroulante du div block 2 et de l'afficher dans le div block 3 . J'utilise xajax pour me simplifier la vie :)
Si vous avez une solution je suis preneur.
Je vous remercie d'avance.
<?php
include ("fonctions.php"); //ce fichier contient les informations de connexion et défini la fonction connect_db()
function afficher($text)
{
$reponse = new xajaxResponse();//Création d'une instance de xajaxResponse pour traiter les réponses serveur
$reponse->assign('block3', 'innerHTML', $text);//On change le contenu du div block3 par le contenu de $chat
return $reponse;
}
require_once('./xajax_core/xajax.inc.php');
$xajax = new xajax(); //On initialise l'objet xajax
$xajax->register(XAJAX_FUNCTION, 'afficher'); //Déclaration de la fonction MaFonctionPHP
$xajax->processRequest();//Fonction qui va se charger de générer le Javascript, à partir des données que l'on a fournies à xAjax
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Page xajax</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<?php $xajax->printJavascript();/*Fonction qui va afficher le javascript de la page*/ ?>
</head>
----
<select name="id_categorie" onchange= "xajax_afficher(document.getElementById('id_categorie').value);">
<?php
connect_db();
$reponse = mysql_query("SELECT * FROM categories") or die ('Erreur SQL !
'.$sql.'
'.mysql_error());
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<option value= <?php echo $donnees['id_categorie']; ?>><?php echo $donnees['nom_categorie']; ?></option>
<?php
}
close_db();
?>
</select>
,
,
</html>
A voir également:
Probleme pour rapatrier des donnée avec firefox 3 en utilisant getElementById
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 26 nov. 2008 à 10:03
bonjour,
et comment on devine le contenu de ta base de données ?
le contenu des $variables ?
Tu es télépathe et tu penses que tous
les lecteurs ici le sont également ???
il faut mettre la page html résultante ! pas le php !
néanmoins, tu utilises name="id_categorie"
ie c'est remplacer l'ID manquante d'une balise par son name,
ce que ne fait pas FF
fais donc <select name="id_categorie" id="id_categorie"....
ça devrait aller déjà un peu mieux ( sans préjuger du reste )
balgrim86
Messages postés4Date d'inscriptiondimanche 23 novembre 2008StatutMembreDernière intervention26 novembre 2008 25 nov. 2008 à 17:38
Pour information quand je dis que ce ne fonctionne pas sous firefox 3 c'est que rien ne s'affiche dans le div block 3 quand je change les elements de la liste. La console d'erreur de firefox me retourne l'erreur suivante : Erreur : document.getElementById("id_categorie") is null. Pourtant dans IE aucun probleme et tout s'afcie correctement.
balgrim86
Messages postés4Date d'inscriptiondimanche 23 novembre 2008StatutMembreDernière intervention26 novembre 2008 26 nov. 2008 à 10:34
Merci pour ta réponse, par contre je veux juste te rappeler que je suis amateur débutant en programmation. J'ai passé beaucoup de temps à lire les forum les tutos et faire des recherches. Bien évidemment tu es meilleur que moi la preuve tu me réponds et me donne la bonne réponse. J'ai oublié de mettre l'id une erreur d'étourderie. Mais si mon post est incomplet il y a d'autre moyen de me le faire savoir plutot que de me prendre de haut. C'est un peu facile surtout quand on est caché derriere son ecran d'ordinateur.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 26 nov. 2008 à 10:56
>>Bien évidemment tu es meilleur que moi
bien sûr que non !
>>la preuve
ce n'est pas une preuve ! j'ai trouvé ( car j'avais déjà commis cette
étourderie ), la prochaine fois c'est toi qui me dépannera.
>J'ai oublié de mettre l'id une erreur d'étourderie
ben oui... je fais souvent bien pire, et alors ?
>>Mais si mon post est incomplet
pas incomplet ! impossible à exploiter pour n'importe qui
qui n'aurait pas ton environnement complet , c'est à dire tout le monde
>>il y a d'autre moyen de me le faire savoir
un peu d'humour ne peut pas nuire,
mais si tu es susceptible, navré, je ne voulais ni t'offusquer ni me
moquer de quoi que ce soit, simplement te "conseiller" ( si on peut
donner un conseil quelconque à quiconque ) pour la prochaine fois
>>surtout quand on est caché derriere son ecran d'ordinateur
qu'est-ce que tu veux ? me rencontrer pour ma casser la gù€ù£€ ?