J'ai un souci sur une application (Dependent select box) normalement fonctionnel à 70 %, je vous explique :
Mes 01 et 02 ème select fonctionnent bien mais pas le 03 ème, en effet ce dernier ne tient pas compte de ma sélection sur la 01 ère liste ( select ) est affiche 02 type de résultats selon la mention sur javascript suivante ex :
1 - il affiche un seul resultat ( le 01er de la liste seulement ) si j'ecris :
Code : Tout sélectionner
var aid = $(this).val();Code : Tout sélectionner
var aid = $(this).text().trim();code javascript
Code : Tout sélectionner
script type = "text/javascript">
$(document).ready(function(){
$('#suj').change(function(){
var aid = $(this).val();
if (aid){
$.POST("data11.php",
{ suj : aid },
function(data) {
$('#titre').html(data);
});
}
else {
$('#publiv').html('<option>CHOIX OEUVRE</option>');
}
});
$('#titre').change(function(){
var aid = $(this).text().trim();
if (aid){
$.POST("data22.php",
{ titre : aid },
function(data) {
$('#publiv').html(data);
});
}
else {
$('#publiv').html('<option>CHOIX EDITION</option>');
}
});
});
</script>
Code : Tout sélectionner
<select type= "text" name ="suj" id ="suj" >
<option value= "" >Choix sujet</option>
<?php
mysqli_set_charset($conn,'utf8');//si jamais tu as des accents dans la table !
$query =("SELECT 3_oeuv.suj FROM 3_oeuv GROUP BY 3_oeuv.suj");
$result = mysqli_query ($conn, $query );
while ( $row = mysqli_fetch_array( $result)){
echo '<option value="'.$row['suj'].'"';
if(isset($_POST['suj']) && $_POST['suj'] == $row['suj']) echo 'selected="selected"';
echo ">".$row['suj']."</option>'";
}
?>
</select>
<button type = " submit" name ="search" >RECH</button>Code : Tout sélectionner
<select type= "text" name ="titre" id="titre" >
<option value="">Choix titre</option>
<?php
include 'data11.php'
?>
</select>
<button type = " submit" name ="submit" ">Rech</button>Code : Tout sélectionner
<?php
mysqli_set_charset($conn,'utf8');//si jamais tu as des accents dans la table !
if(isset($_POST['suj']) && !empty ($_POST['suj'])){
$id = $_POST['suj'];
$query =("SELECT * FROM 3_oeuv WHERE 3_oeuv.suj = '{$id}' GROUP BY 3_oeuv.titre");
if($result =mysqli_prepare ($conn, $query )){
mysqli_stmt_bind_param($result, 's', $id);
mysqli_stmt_execute($result);
$data=mysqli_stmt_get_result($result);
mysqli_stmt_store_result($result);
$count =mysqli_stmt_affected_rows($result);
if ($count >0){
while ( $row = mysqli_fetch_array($data)){
echo '<option value="'.htmlspecialchars($row['titre']).'"';
if(isset($_POST['titre']) && $_POST['titre'] == $row['titre']) echo 'selected="selected"';
echo ">".htmlspecialchars($row['titre']).'</option>';
}
mysqli_free_result($data);
}
else {
echo '<option>Not Nom Availibal :'.$count.'</option>';
}
mysqli_stmt_close($result);
}
}
?>Code : Tout sélectionner
<select type= "text" name ="publiv" id="publiv" >
<option value="">Choix Edition</option>
<?php
include 'data22.php'
?>
</select>
<button type = " submit" name ="submitt" >Rech</button>Code : Tout sélectionner
<?php
if(isset($_POST['titre']) && !empty ($_POST['titre'])){
$ide = $_POST['titre'];
$query =("SELECT * FROM 4_etat JOIN 3_oeuv ON 3_oeuv.id_oeuv = 4_etat.id_etat WHERE 3_oeuv.titre = '{$ide}' GROUP BY 4_etat.publiv");
if($result =mysqli_prepare ($conn, $query )){
mysqli_stmt_bind_param($result, 's', $ide);
mysqli_stmt_execute($result);
$data=mysqli_stmt_get_result($result);
mysqli_stmt_store_result($result);
$count =mysqli_stmt_affected_rows($result);
if ($count >0){
while ( $row = mysqli_fetch_array($data)){
echo '<option value="'.htmlspecialchars($row['publiv']).'"';
if(isset($_POST['publiv']) && $_POST['publiv'] == $row['publiv']) echo 'selected="selected"';
echo ">".htmlspecialchars($row['publiv']).'</option>';
}
mysqli_free_result($data);
}
else {
echo '<option>Not Nom Availibal :'.$count.'</option>';
}
mysqli_stmt_close($result);
}
}
?>