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
je n'ai pas de message d'erreur, dans l'onglet console de firebug
la première apparait au choix du 1er menu déroulant et la 2eme ligne au 2eme menu déroulant
quand le clic sur envoyer (vers la base) toujours pas de message d'erreur !
- Code: Tout sélectionner
http://localhost/test3/form/select_codedial.php? 200 OK 26ms jquery.js (ligne 5252)
http://localhost/test3/form/select_intitule.php? 200 OK 11ms jquery.js (ligne 5252)
voici les pages dont vous auriez besoin :
ajax.js
- Code: Tout sélectionner
function ajax(strthis)
{
var param = strthis.value;
var unite = document.getElementById("unite").options[document.getElementById("unite").selectedIndex].value;
$("#tr_codedial").empty();
$.ajax
(
{
type: "POST",
url: "select_codedial.php",
data: "var="+param,
success:
function(msg)
{
$("#tr_codedial").append("<td><div align='right'>Code Dialogue :</div></td><td><div align='left'>"+ msg +"</div></td>");
}
}
);
}
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
- Code: Tout sélectionner
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="ajax.js"></script>
<form method="POST" action="valide1.php" name="caapp">
<tr id='tr_affaire' align="center">
<td><div align="right">Service : </div></td>
<td><div align="left"><?php include('select_unite.php')?></div></td>
</tr>
<tr id='tr_codedial'>
<td><div align="right">Code Dialogue : </div></td>
<td><div align="left" id='tr_codedial'><?php include('select_codedial.php')?></div></td>
</tr>
<tr id='tr_intitule'>
<td><div align="right">Intitulé Code Dialogue : </div></td>
<td><div align="left" id='tr_intitule'><?php include('select_intitule.php')?></div></td>
</tr>
<input type="submit" value="Envoyer" />
</form>
select_unite.php
- Code: Tout sélectionner
<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>
select_codedial.php
- Code: Tout sélectionner
<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>
select_intitule.php
- Code: Tout sélectionner
<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>