{"id":24735,"date":"2021-05-24T13:39:00","date_gmt":"2021-05-24T10:39:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24735"},"modified":"2021-10-18T02:14:05","modified_gmt":"2021-10-17T23:14:05","slug":"comment-utiliser-datatable-en-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/comment-utiliser-datatable-en-php\/","title":{"rendered":"Comment utiliser DataTable en PHP"},"content":{"rendered":"<p>Vous souhaitez int\u00e9grer DataTable dans votre application? DataTable ajoute des contr\u00f4les d&rsquo;interaction avanc\u00e9s \u00e0 vos tableaux HTML. De plus, il est open-source, donc tout le monde peut l&rsquo;utiliser gratuitement. C&rsquo;est utile lorsque votre table contient des centaines d&rsquo;entr\u00e9es. En utilisant DataTable, vous obtiendrez leurs fonctionnalit\u00e9s int\u00e9gr\u00e9es telles que le tri, la recherche, la pagination, etc. Dans cet article, je vous montre comment utiliser DataTable en PHP.<\/p>\n<p><a href=\"https:\/\/datatables.net\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">DataTables<\/a> est un choix populaire pour r\u00e9pertorier les enregistrements tabulaires dans l&rsquo;application. En raison de sa simplicit\u00e9 et de sa facilit\u00e9 d&rsquo;installation, les d\u00e9veloppeurs ont pr\u00e9f\u00e9r\u00e9 l&rsquo;utiliser.<\/p>\n<p>Pour notre tutoriel, je vais cr\u00e9er une table dans la base de donn\u00e9es et afficher ses enregistrements dans la DataTable. La sortie finale ressemblera \u00e0 la capture d&rsquo;\u00e9cran ci-dessous\u00a0:<\/p>\n<h3>Commencer<\/h3>\n<p>Pour commencer, rendez-vous sur votre phpMyAdmin et cr\u00e9ez le tableau \u00e0 l&rsquo;aide de la requ\u00eate ci-dessous\u00a0:<\/p>\n<pre><code>CREATE TABLE `users` (\u00a0`id` int(11) NOT NULL AUTO_INCREMENT,\n\u00a0`first_name` varchar(255) NOT NULL,\n\u00a0`last_name` varchar(255) NOT NULL,\n\u00a0`age` int(11) NOT NULL,\n\u00a0PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;<\/code><\/pre>\n<p>La table &lsquo;users&rsquo; contient les colonnes first_name, last_name et age. Ajoutez des entr\u00e9es fictives dans ce tableau. L&rsquo;utilisateur peut utiliser la <a href=\"https:\/\/themewp.inform.click\/fr\/comment-creer-une-base-de-donnees-a-l-aide-de-la-bibliotheque-php-faker\/\" title=\"biblioth\u00e8que Faker\">biblioth\u00e8que Faker<\/a> pour ensemencer votre table avec des entr\u00e9es factices. En utilisant la biblioth\u00e8que de faux, on peut ajouter des milliers de fausses entr\u00e9es dans la base de donn\u00e9es en quelques instants.<\/p>\n<p>Ensuite, cr\u00e9ez un <code>config.php<\/code>fichier et \u00e9crivez un code pour la connexion \u00e0 la base de donn\u00e9es.<\/p>\n<p><strong>config.php<\/strong><\/p>\n<pre><code>&lt;?php\n$conn = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);\n\u00a0\nif ($conn-&gt;connect_errno) {\n\u00a0\u00a0\u00a0\u00a0echo \"Error: \". $conn-&gt;connect_error;\n}<\/code><\/pre>\n<p>Assurez-vous de remplacer les espaces r\u00e9serv\u00e9s par les valeurs r\u00e9elles.<\/p>\n<h3>Comment utiliser DataTable en PHP<\/h3>\n<p>Pour int\u00e9grer DataTable, je vais r\u00e9cup\u00e9rer les enregistrements de la base de donn\u00e9es, les parcourir et les afficher dans une table. Et puis appliquez DataTable au tableau HTML.<\/p>\n<p>Cr\u00e9ez un <code>index.php<\/code>fichier et ajoutez-y le code ci-dessous.<\/p>\n<pre><code>&lt;?php\nrequire_once('config.php');\n\u00a0\n$sql = \"SELECT id, first_name, last_name, age FROM users\";\n$result = $conn-&gt;query($sql);\n$arr_users = [];\nif ($result-&gt;num_rows &gt; 0) {\n\u00a0\u00a0\u00a0\u00a0$arr_users = $result-&gt;fetch_all(MYSQLI_ASSOC);\n}\n?&gt;<\/code><\/pre>\n<p>Dans le code ci-dessus, j&rsquo;ai r\u00e9cup\u00e9r\u00e9 toutes les lignes de la table &lsquo;users&rsquo; et les ai affect\u00e9es \u00e0 la variable PHP <code>$arr_users<\/code>. Maintenant, je vais parcourir cette variable et cr\u00e9er la ligne du tableau une par une.<\/p>\n<pre><code>&lt;table id=\"userTable\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;thead&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;First Name&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Last Name&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Age&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/thead&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;tbody&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php if(!empty($arr_users)) { ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php foreach($arr_users as $user) { ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;?php echo $user['first_name']; ?&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;?php echo $user['last_name']; ?&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;?php echo $user['age']; ?&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php } ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php } ?&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/tbody&gt;\n&lt;\/table&gt;<\/code><\/pre>\n<p>Ici, j&rsquo;ai donn\u00e9 un identifiant &lsquo;userTable&rsquo; \u00e0 la table. La prochaine chose que je dois faire est d&rsquo;inclure les fichiers requis de DataTable dans le code HTML.<\/p>\n<pre><code>&lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"\/\/cdn.datatables.net\/1.10.21\/css\/jquery.dataTables.min.css\"\/&gt;\n&lt;script src=\"\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js\"&gt;&lt;\/script&gt;\n&lt;script type=\"text\/javascript\" src=\"\/\/cdn.datatables.net\/1.10.21\/js\/jquery.dataTables.min.js\"&gt;&lt;\/script&gt;<\/code><\/pre>\n<p>Enfin, appelez la m\u00e9thode DataTable() sur l&rsquo;identifiant de table donn\u00e9.<\/p>\n<pre><code>&lt;script&gt;\n$(document).ready(function() {\n\u00a0\u00a0\u00a0\u00a0$('#userTable').DataTable();\n});\n&lt;\/script&gt;<\/code><\/pre>\n<p>Notre code final est le suivant ;<\/p>\n<pre><code>&lt;?php\nrequire_once('config.php');\n\u00a0\n$sql = \"SELECT id, first_name, last_name, age FROM users\";\n$result = $conn-&gt;query($sql);\n$arr_users = [];\nif ($result-&gt;num_rows &gt; 0) {\n\u00a0\u00a0\u00a0\u00a0$arr_users = $result-&gt;fetch_all(MYSQLI_ASSOC);\n}\n?&gt;\n&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta charset=\"UTF-8\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;title&gt;Datatable&lt;\/title&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"\/\/cdn.datatables.net\/1.10.21\/css\/jquery.dataTables.min.css\"\/&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;table id=\"userTable\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;thead&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;First Name&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Last Name&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Age&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/thead&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tbody&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php if(!empty($arr_users)) { ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php foreach($arr_users as $user) { ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;?php echo $user['first_name']; ?&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;?php echo $user['last_name']; ?&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;?php echo $user['age']; ?&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php } ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php } ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tbody&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/table&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;script src=\"\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js\"&gt;&lt;\/script&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;script type=\"text\/javascript\" src=\"\/\/cdn.datatables.net\/1.10.21\/js\/jquery.dataTables.min.js\"&gt;&lt;\/script&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;script&gt;\n\u00a0\u00a0\u00a0\u00a0$(document).ready(function() {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$('#userTable').DataTable();\n\u00a0\u00a0\u00a0\u00a0});\n\u00a0\u00a0\u00a0\u00a0&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p>J&rsquo;esp\u00e8re que vous pourrez apprendre \u00e0 utiliser DataTable en PHP. S&rsquo;il vous pla\u00eet partager vos pens\u00e9es dans la section commentaire ci-dessous.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-convertir-du-html-en-pdf-en-php\/\" title=\"Comment convertir du HTML en PDF en PHP\">Comment convertir du HTML en PDF en PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-exporter-des-donnees-de-base-de-donnees-mysql-vers-excel-a-l-aide-de-php\/\" title=\"Comment exporter des donn\u00e9es de base de donn\u00e9es MySQL vers Excel \u00e0 l&#039;aide de PHP\">Comment exporter des donn\u00e9es de base de donn\u00e9es MySQL vers Excel \u00e0 l&rsquo;aide de PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-lire-un-fichier-csv-et-excel-en-php-a-l-aide-de-phpspreadsheet\/\" title=\"Comment lire un fichier CSV et Excel en PHP \u00e0 l&#039;aide de PhpSpreadsheet\">Comment lire un fichier CSV et Excel en PHP \u00e0 l&rsquo;aide de PhpSpreadsheet<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les DataTables sont tr\u00e8s populaires pour la liste des enregistrements dans votre application. Dans cet article, nous \u00e9tudions comment utiliser DataTable en PHP.<\/p>\n","protected":false},"author":1,"featured_media":20497,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[205,273],"tags":[844],"class_list":["post-24735","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-elementor-4","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24735","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=24735"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24735\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/20497"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=24735"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=24735"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=24735"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}