Bonjour,
Je débute (fortement en JS) et je cherche à afficher le contenu d'une requête SQL dans un datatable.
L'affichage est correct, j'ai bien le champs de recherche et le menu déroulant cependant ces deux derniers ne fonctionnent pas. La recherche n'est pas prise en compte (quelque soit la chaîne de caractère recherchée, elle n'est pas trouvée) et tout mon tableau est affiché (quelque soit le nombre d'entrée à afficher choisi dans le menu déroulant).
Je suppose que le problème vient du fait que mon tableau est généré en php (j'ai essayé avec l'exemple fourni sur https://www.datatables.net/examples/...ro_config.html qui fonctionne parfaitement).
D'avance merci.
EDIT: En fait, le problème doit vraiment venir de ma gestion avec php car le plugin considère qu'il n'y a qu'une entrée dans le tableau quelque soit le nombre d'entrée réelles.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 <html> <title>Emission</title> <script type="text/javascript" language="javascript" src="/jquery.js"></script> <script type="text/javascript" language="javascript" src="/jquery.dataTables.js"></script> <script type="text/javascript" charset="utf-8"> $(document).ready(function() { $('#tableau_emission').dataTable(); } );</script> <body> <?php // information pour la connection à le DB $host = 'localhost'; $user = 'user'; $pass = 'mdp'; $db = 'ma_db'; // connection à la DB $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); mysql_select_db($db) or die ('Erreur :'.mysql_error()); // requête SQL qui récupère toutes les émissions de la table url_emission $select = 'SELECT * FROM t_url_emissions'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $total = mysql_num_rows($result); // si résultat, on l'affiche. if($total) { // debut du tableau echo '<table cellpadding="0" cellspacing="0" border="0" class="display" bgcolor="#FFFFFF" id="tableau_emission">'."\n"; // première ligne : intitulé de colonnes echo '<thead>'; echo '<tr>'; echo '<th bgcolor="#669999"><b><u>Chaine</u></b></th>'; echo '<th bgcolor="#669999"><b><u>Titre Emission</u></b></th>'; echo '<th bgcolor="#669999"><b><u>elm_pg_numero</u></b></th>'; echo '<th bgcolor="#669999"><b><u>url_emission</u></b></th>'; echo '</tr>'."\n"; echo '</thead>'; // lecture et affichage des résultats sur 3 colonnes: 1 résultat par ligne. while($row = mysql_fetch_array($result)) { echo '<tbody>'; echo '<tr>'; echo '<td bgcolor="#CCCCCC">'.$row["chaine"].'</td>'; echo '<td bgcolor="#CCCCCC">'.$row["titre_emission"].'</td>'; echo '<td bgcolor="#CCCCCC">'.$row["elm_pg_numero"].'</td>'; echo '<td bgcolor="#CCCCCC">'.$row["url_emission"].'</td>'; echo '</tr>'."\n"; echo '</tbody>'; } echo '</table>'."\n"; // fin du tableau. } else echo 'Pas d\'enregistrements dans cette table...'; // libèration du résultat mysql_free_result($result); ?> </body> </html>
Partager