Forcer le sql à donner tous les résultats d'un champ

Eléphanteau du PHP | 14 Messages

08 oct. 2020, 16:19

Bonjour ;

J'ai un souci avec une requête sql qui met à mal mon application :evil:

en effet, sur la dernière liste (Select) de 03 listes de type (dependent multi boxe ) la requete se contente de me donner le premier résultat de la liste seulement .
Comment faire pour avoir tous les données attendues dans cette liste:|

NB : 1 - les 02 dernières listes sont dans une même table et la CP est un "intiger"
2 - 02 première liste fonctionnent normalement

Voilà le bout du javascript pour cette liste

Code : Tout sélectionner

}); $('#suj').change(function(){ var aid = $(this).val(); if (aid){ $.POST("dataaa.php", { suj : aid }, function(data) { $('#lng').html(data); }); } else { $('#lng').html('<option>Choix langue</option>'); } });
Voilà le bout HTML de cette liste

Code : Tout sélectionner

<select type= "text" name ="lng" id= "lng" style="width:110px; position: relative; right: 247px; font-weight: bold; text-align:center;" > <option value= "">Choix langue</option> <?php include 'dataaa.php'; ?> </select>
voilà le fichier PHP joint au java

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 id_oeuv, lng FROM 3_oeuv WHERE 3_oeuv.id_oeuv = ? "); 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['id_oeuv']).'"'; if(isset($_POST['lng']) && $_POST['lng'] == $row['id_oeuv']) echo 'selected="selected"'; echo ">".htmlspecialchars($row['lng']).'</option>'; } mysqli_free_result($data); } else { echo '<option>Not Nom Availibal :'.$count.'</option>'; } mysqli_stmt_close($result); } } else { echo '<option>Eroor </option>'; } ?>
Merci d'avance :o

Eléphant du PHP | 341 Messages

23 oct. 2020, 07:51

Salut,

Cela va dépendre de ton schéma de données, ici le where limite les enregistrements il suffit de l'enlever pour avoir tous les enregistrements. Pour savoir ce que tu veux test ta requête dans ton sgbd ou phpmyadmin...