Maison  >  Article  >  développement back-end  >  PHP et Ajax : fonction de téléchargement de fichiers en temps réel

PHP et Ajax : fonction de téléchargement de fichiers en temps réel

PHPz
PHPzoriginal
2024-06-05 21:13:00937parcourir

Comment implémenter le téléchargement de fichiers en temps réel à l'aide de PHP et Ajax ? Configurez le téléchargement de fichiers et définissez les autorisations en PHP. Créez un script côté serveur pour gérer le téléchargement. Écrivez un script côté client à l'aide de jQuery pour gérer les requêtes Ajax. Ajoutez une zone de saisie de fichier et un bouton de soumission au formulaire HTML. Utilisez Ajax pour envoyer des fichiers de manière asynchrone au serveur et recevoir l'état de téléchargement sans recharger la page.

PHP 与 Ajax:实现实时的文件上传功能

PHP avec Ajax : Téléchargement de fichiers en temps réel

Introduction

La technologie Ajax (JavaScript asynchrone et XML) permet une communication asynchrone avec le serveur sans recharger la page entière. En combinaison avec PHP, nous pouvons créer une fonction de téléchargement de fichiers en temps réel qui fournit un retour en temps réel à l'utilisateur.

Configuration

Pour utiliser Ajax, nous devons communiquer entre les scripts PHP et JavaScript. Cet exemple utilise la bibliothèque jQuery pour gérer les requêtes Ajax du client. Dans les paramètres PHP, assurez-vous que les téléchargements de fichiers sont autorisés et que les autorisations appropriées sont définies.

Server Side Script (upload.php)

<?php
if (isset($_FILES['file'])) {
    $file = $_FILES['file'];

    // 验证并移动上传的文件
    if (move_uploaded_file($file['tmp_name'], 'uploads/' . $file['name'])) {
        echo '文件上传成功!';
    } else {
        echo '文件上传失败!';
    }
}
?>

client-côté script (upload.js)

$(document).ready(function() {
    $("#file-form").submit(function(e) {
        e.preventDefault();

        let formData = new FormData(this);

        $.ajax({
            url: 'upload.php',
            type: 'POST',
            data: formData,
            cache: false,
            contentType: false,
            processData: false,
            success: function(data) {
                alert(data);
            },
            error: function() {
                alert('请求失败!');
            }
        });
    });
});

html form

<form id="file-form" enctype="multipart/form-data">
    <input type="file" name="file">
    <input type="submit" value="上传">
</form>

case germ Les fichiers seront téléchargés sur le serveur en temps réel. L'utilisateur peut sélectionner un fichier et il sera envoyé de manière asynchrone au serveur dans une requête xhr. Le script serveur valide et stocke le fichier et envoie une réponse au client indiquant le succès ou l'échec du téléchargement. De cette façon, l'utilisateur peut voir les résultats du téléchargement sans recharger la page.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn