{"id":24633,"date":"2021-05-22T14:01:00","date_gmt":"2021-05-22T11:01:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24633"},"modified":"2021-10-18T02:14:33","modified_gmt":"2021-10-17T23:14:33","slug":"telechargement-de-fichiers-ajax-avec-php-et-jquery","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/telechargement-de-fichiers-ajax-avec-php-et-jquery\/","title":{"rendered":"T\u00e9l\u00e9chargement de fichiers Ajax avec PHP et jQuery"},"content":{"rendered":"<p>Vous recherchez un t\u00e9l\u00e9chargement de fichier en utilisant Ajax en PHP? Le t\u00e9l\u00e9chargement d&rsquo;un fichier via Ajax est une tendance de nos jours. Il ajoute une meilleure exp\u00e9rience utilisateur sur un site Web. Dans cet article, je vous montre comment t\u00e9l\u00e9charger des fichiers via Ajax avec PHP et jQuery.<\/p>\n<p>Le t\u00e9l\u00e9chargement de fichiers\/d&rsquo;images est une t\u00e2che r\u00e9guli\u00e8re pour les d\u00e9veloppeurs. Il existe plusieurs cas o\u00f9 vous devez cr\u00e9er une fonctionnalit\u00e9 de t\u00e9l\u00e9chargement de fichiers. Certains des exemples courants sont le t\u00e9l\u00e9chargement de photos de profil, d&rsquo;images de curseur, de t\u00e9moignages, de portfolios, de carrousels, etc.<\/p>\n<h3>Pourquoi avoir besoin de File Upload en utilisant Ajax ?<\/h3>\n<p>La principale raison pour laquelle vous effectuez un t\u00e9l\u00e9chargement de fichier via Ajax est que vous ne souhaitez pas actualiser une page apr\u00e8s le t\u00e9l\u00e9chargement de fichier. Et c&rsquo;est \u00e9vident. Il ne sert \u00e0 rien de charger une page enti\u00e8re si ce n&rsquo;est pas n\u00e9cessaire. Si vous chargez une page apr\u00e8s le t\u00e9l\u00e9chargement du fichier, vous ajoutez une charge suppl\u00e9mentaire sur un serveur.<\/p>\n<p>Le t\u00e9l\u00e9chargement de fichiers \u00e0 l&rsquo;aide d&rsquo;Ajax r\u00e9duit la charge inutile sur un serveur et offre une meilleure exp\u00e9rience utilisateur sur le site Web.<\/p>\n<p>Alors sans plus tarder commen\u00e7ons par le code.<\/p>\n<h3>T\u00e9l\u00e9chargement de fichiers en utilisant Ajax avec PHP et jQuery<\/h3>\n<p>Commen\u00e7ons par cr\u00e9er un formulaire qui a une entr\u00e9e de fichier et le bouton d&rsquo;envoi. Ajoutez le code HTML ci-dessous dans votre fichier, par exemple <code>index.php<\/code>.<\/p>\n<pre><code>&lt;form&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;input type=\"file\" name=\"file\" class=\"file\" required&gt;&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" class=\"submit\" value=\"Submit\"&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p>Comme je vais \u00e9crire un peu de code JavaScript, j&rsquo;ai respectivement ajout\u00e9 les classes &lsquo;file&rsquo; et &lsquo;submit&rsquo; aux boutons d&rsquo;entr\u00e9e et de soumission du fichier. Ces classes servent d&rsquo;identifiant pour les \u00e9l\u00e9ments de formulaire.<\/p>\n<h4>Code JavaScript<\/h4>\n<p>Ensuite, \u00e9crivez du code JavaScript qui donnera un appel Ajax \u00e0 un c\u00f4t\u00e9 serveur et g\u00e9rera la r\u00e9ponse.<\/p>\n<pre><code>&lt;script src=\"https:\/\/code.jquery.com\/jquery-3.5.0.js\"&gt;&lt;\/script&gt;\n&lt;script type=\"text\/javascript\"&gt;\n\u00a0\u00a0\u00a0\u00a0$(function() {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$('.submit').on('click', function() {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0var file_data = $('.file').prop('files')[0];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if(file_data != undefined) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0var form_data = new FormData();\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0form_data.append('file', file_data);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$.ajax({\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0type: 'POST',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0url: 'ajax.php',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0contentType: false,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0processData: false,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0data: form_data,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0success:function(response) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if(response == 'success') {\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\u00a0\u00a0\u00a0\u00a0alert('File uploaded successfully.');\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} else {\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\u00a0\u00a0\u00a0\u00a0alert('Something went wrong. Please try again.');\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}\n\u00a0\u00a0\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$('.file').val('');\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0});\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return false;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0});\n\u00a0\u00a0\u00a0\u00a0});\n&lt;\/script&gt;<\/code><\/pre>\n<p>Dans le code JavaScript ci-dessus, j&rsquo;envoie le contenu du <code>ajax.php<\/code>fichier au fichier et g\u00e8re \u00e9galement la r\u00e9ponse.<\/p>\n<h4>Code PHP<\/h4>\n<p>\u00c0 ce stade, nous avons termin\u00e9 d&rsquo;envoyer le contenu du fichier c\u00f4t\u00e9 serveur. Cr\u00e9ez maintenant un fichier <code>ajax.php<\/code>o\u00f9 nous devons \u00e9crire le code PHP qui t\u00e9l\u00e9charge les fichiers sur un serveur.<\/p>\n<p><strong>ajax.php<\/strong><\/p>\n<pre><code>&lt;?php\nif (!file_exists('uploads')) {\n\u00a0\u00a0\u00a0\u00a0mkdir('uploads', 0777);\n}\n\u00a0\u00a0\nmove_uploaded_file($_FILES['file']['tmp_name'], 'uploads\/'. $_FILES['file']['name']);\n\u00a0\u00a0\necho \"success\";\ndie();<\/code><\/pre>\n<p>Le code PHP ci-dessus v\u00e9rifie d&rsquo;abord le r\u00e9pertoire &lsquo;uploads&rsquo;. Si ce r\u00e9pertoire n&rsquo;existe pas, il le cr\u00e9e et t\u00e9l\u00e9charge le fichier dans ce dossier.<\/p>\n<p>J&rsquo;esp\u00e8re que vous pouvez maintenant facilement mettre en \u0153uvre le t\u00e9l\u00e9chargement de fichiers \u00e0 l&rsquo;aide d&rsquo;Ajax sur votre site Web. J&rsquo;aimerais entendre vos pens\u00e9es dans la section des commentaires ci-dessous.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-charger-des-articles-wordpress-avec-ajax\/\" title=\"Comment charger un article WordPress avec AJAX\" >Comment charger un article WordPress avec AJAX<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-utiliser-la-saisie-semi-automatique-jquery-avec-ajax\/\" title=\"Comment utiliser la saisie semi-automatique jQuery avec Ajax\" >Comment utiliser la saisie semi-automatique jQuery avec Ajax<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/glisser-deposer-le-telechargement-de-fichiers-a-l-aide-de-javascript-et-php\/\" title=\"Glisser-d\u00e9poser le t\u00e9l\u00e9chargement de fichiers \u00e0 l'aide de JavaScript et PHP\" >Glisser-d\u00e9poser le t\u00e9l\u00e9chargement de fichiers \u00e0 l&rsquo;aide de JavaScript et PHP<\/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>Le t\u00e9l\u00e9chargement de fichiers Ajax est une t\u00e2che courante pour un site Web. Dans ce guide, nous vous montrons comment effectuer la t\u00e2che de t\u00e9l\u00e9chargement de fichiers Ajax. Il est tr\u00e8s facile \u00e0 mettre en \u0153uvre.<\/p>\n","protected":false},"author":1,"featured_media":22140,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[273],"tags":[844],"class_list":["post-24633","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24633","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=24633"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24633\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/22140"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=24633"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=24633"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=24633"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}