par ca
$buffer = '<select id="unite" name="unite" onChange="ajax(this)">';
$buffer .='<option value="void_affaire">-</option>' ;
j'avais écrit çà à l'arrache mais tu devrais trouver ce genre d'erreur seul
a++
]]>Parse error: syntax error, unexpected T_STRING in C:\wamp\www\test3\form\select_unite.php on line 3
cette ligne
var unite = document.getElementById("unite").options[document.getElementById("unite").selectedIndex].value;
me permet "normalement" de récupérer la valeur de 'codedial' et 'intitule'
j'ai aussi modifié le code javascipt ci-dessus, mais je me rretouve lors du choix du premier menu
avec au lieu d'avoir un second menu déroulant qui se rafraichit avec les bonnes valeurs, j'ai ce message :
[object XMLHttpRequest]
que sous IE8 et sous FF rien ne change, le menu apparait, mais toujours pas d'enregistrement dans la base !
cela ne pourrait pas venir, du fait que je n'ai pas de fonction XMLHttpRequest ?
]]>mais je veux bien te donner qq conseil pour "proprofier" ton code
ce que j'ai déjà fais une 1er fois
ca : var unite = document.getElementById("unite").options[document.getElementById("unite").selectedIndex].value;
je ne vois pas à quoi çà sert ???
et ton truc :
$("#tr_intitule").empty();
$.ajax
(
{
type: "POST",
url: "select_intitule.php",
data: "var="+param,
success:
function(msg)
{
$("#tr_intitule").append("<td><div align='right'>Intitulé Code Dialogue :</div></td><td><div align='left'>"+ msg +"</div></td>");
}
}
);
c'est degueu
change par
fais un peu de ménage et tu verras tu prend un gros risque de meilleur fonctionnement
@++
et reboncourage
]]>j'ai bien supprimé les include (ajax.js et jquery.js) sur les trois fichiers select_*.php
en supprimant le head et le body par la même occasion
cela ne change pas le bon fonctionnement du formulaire sous IE8
en fait je pense qu'il faut ajouter un objet XHR pour que cela fonctionne sous FF
mais je n'arrive pas à l'insérer et l'adapter à mon code
merci pour le courage
mais je ne pense pas être trop loin de la réussite, alors si tu as quelques minutes
merci tout de même pour ton intervention
]]>arrête de faire des diagnostiques
quand je regarde tes 2 scripts (select_codedial.php et select_codedial.php) , je suis malade du bordel que çà doit générer :D
<HEAD>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="ajax.js"></script>
</HEAD>
<BODY>
et ce, sur les 2 scripts.
si j'ai bien compris, tu append ( $("#tr_intitule").append ) certainement dans une div (après verification, c'est dans un tr) un head et un body
y en a déjà a la base, donc tu les écrases ????
tu parles d'objet XHR, et tu écris dans ton script $.ajax(............).
pour ma part, je ne vois pas comment t'aider tellement tu es loin de la vérité.
Je ne peut que te souhaiter : "BON COURAGE"
a++
]]>si tu peux me conseiller sur quel objet XHR insérer et la façon dont cela pourrait fonctionner
]]>tout d'abord, je travail sur un formulaire, un 2eme menu déroulant dépendant du 1er et un 3eme dépendant du 2sd, il fonctionne très bien, voir les pages ci-dessous, mais il ne fonctionne que sous IE8, pas sous FF 3.6.10 !
J'ai cherché sur le web et cela proviendrait de xmlhttprequest voir du bouton submit...
Je suis débutant en php/mysql et pas de notion en java, j'aimerais des conseils sur mon problème, voir une solution
voici les pages dont vous auriez besoin :
ajax.js
function ajax2(strthis)
{
var param = strthis.value;
var intitule = document.getElementById("intitule").options[document.getElementById("intitule").selectedIndex].value;
$("#tr_intitule").empty();
$.ajax
(
{
type: "POST",
url: "select_intitule.php",
data: "var="+param,
success:
function(msg)
{
$("#tr_intitule").append("<td><div align='right'>Intitulé Code Dialogue :</div></td><td><div align='left'>"+ msg +"</div></td>");
}
}
);
}
form1.php
select_unite.php
<BODY>
<select id='unite' name='unite' onChange="ajax(this)">
<option value='void_affaire'>-</option>
<?php
include("../connexion.php");
$query = "SELECT DISTINCT unite FROM codedial ORDER BY unite ASC";
$rq = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
{
$unite = $row["unite"];
echo "<option value='$unite'>$unite</option>";
}
mysql_close();
?>
</select>
</BODY>
select_codedial.php
<BODY>
<select id='codedial' name='codedial' onChange="ajax2(this)">
<option value='void_localisation'>-</option>
<?php
include("../connexion.php");
$var=$_POST['var'];
$query = "SELECT DISTINCT codedial FROM codedial WHERE unite='$var' ORDER BY codedial ASC";
$rq = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
{
$codedial = $row["codedial"];
echo "<option value='$codedial'>$codedial</option>";
}
mysql_close();
?>
</select>
</BODY>
select_intitule.php
<BODY>
<select id='intitule' name='intitule'>
<option value='void_localisation'>-</option>
<?php
include("../connexion.php");
$var=$_POST['var'];
$query = "SELECT DISTINCT intitule FROM codedial WHERE codedial='$var' ORDER BY intitule ASC";
$rq = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
{
$intitule = $row["intitule"];
echo "<option value='$intitule'>$intitule</option>";
}
mysql_close();
?>
</select>
</BODY>