Maison  >  Article  >  développement back-end  >  Gestion du chargement et du téléchargement de fichiers avec PHP et mini-programmes

Gestion du chargement et du téléchargement de fichiers avec PHP et mini-programmes

WBOY
WBOYoriginal
2023-07-06 09:19:361264parcourir

Gestion du téléchargement et du téléchargement de fichiers PHP et mini-programmes

Avec le développement rapide de l'Internet mobile, les mini-programmes sont devenus la plateforme de développement privilégiée pour de plus en plus d'entreprises et de particuliers. Dans le processus de développement de petits programmes, le téléchargement de fichiers est l’une des exigences courantes. Cet article expliquera comment utiliser PHP pour implémenter la gestion du téléchargement et du téléchargement de mini-fichiers de programme et fournira des exemples de code pertinents.

1. Téléchargement de fichiers

Dans les mini-programmes, les utilisateurs doivent souvent télécharger des photos, des vidéos et d'autres fichiers. En tant que puissant langage de script côté serveur, PHP peut facilement gérer les opérations de téléchargement de fichiers.

Tout d'abord, vous devez ajouter un bouton de téléchargement de fichier et la fonction de gestion des événements correspondante à la partie frontale du mini programme. Un exemple est le suivant :

<view class="upload-btn" bindtap="chooseFile">
  <image src="upload.png"></image>
  <text>点击上传</text>
</view>

<!-- 小程序的wxml文件中添加了一个文件上传按钮 -->
chooseFile: function() {
  wx.chooseImage({
    success: function(res) {
      var tempFilePaths = res.tempFilePaths[0];
      wx.uploadFile({
        url: 'https://yourserver.com/upload.php',
        filePath: tempFilePaths,
        name: 'file',
        success: function(res) {
          console.log(res.data);
        }
      });
    }
  });
}

// 小程序的js文件中添加了选择文件和上传文件的处理函数

Ensuite, utilisez PHP côté serveur pour traiter le fichier téléchargé. Créez un fichier nommé upload.php et ajoutez le code suivant :

<?php
  $target_dir = "uploads/";
  $target_file = $target_dir . basename($_FILES["file"]["name"]);
  $uploadOk = 1;
  $imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

  // 判断上传的文件是否为真实的图片
  if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["file"]["tmp_name"]);
    if($check !== false) {
      $uploadOk = 1;
    } else {
      echo "文件不是图片";
      $uploadOk = 0;
    }
  }

  // 检查文件是否已存在
  if (file_exists($target_file)) {
    echo "文件已存在";
    $uploadOk = 0;
  }

  // 检查文件大小
  if ($_FILES["file"]["size"] > 500000) {
    echo "文件过大";
    $uploadOk = 0;
  }

  // 允许上传的文件格式
  if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
    && $imageFileType != "gif" ) {
    echo "仅支持 JPG, JPEG, PNG, GIF 文件";
    $uploadOk = 0;
  }

  // 检查是否出现错误
  if ($uploadOk == 0) {
    echo "文件上传遇到错误";
  } else {
    if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) {
      echo "文件上传成功";
    } else {
      echo "文件上传失败";
    }
  }
?>

Le code ci-dessus enregistrera le fichier téléchargé dans le dossier de téléchargement sur le serveur et le vérifiera en fonction du type et de la taille du fichier. Si le téléchargement réussit, une invite « Fichier téléchargé avec succès » sera imprimée dans le mini-programme, sinon un message d'erreur correspondant sera affiché.

2. Téléchargement de fichiers

Dans le mini-programme, les utilisateurs peuvent avoir besoin de télécharger certains fichiers, tels que des documents PDF, des fichiers audio, etc. Voici un exemple de code utilisant PHP pour implémenter la fonction de téléchargement de fichier :

<?php
  $file_url = 'http://yourserver.com/files/sample.pdf'; // 下载文件的URL
  $file_name = basename($file_url);

  header('Content-Type: application/octet-stream'); // 指定下载文件的文件类型
  header("Content-Transfer-Encoding: Binary");
  header("Content-disposition: attachment; filename="" . $file_name . """);
  readfile($file_url); // 将文件发送到用户端
?>

Dans l'exemple ci-dessus, $file_url représente l'URL du fichier à télécharger. Dites au navigateur de télécharger le fichier en définissant l'en-tête, puis utilisez la fonction readfile pour envoyer le fichier à l'utilisateur.

Ce qui précède est une introduction simple et un exemple de code d'utilisation de PHP pour implémenter la gestion du téléchargement et du téléchargement de fichiers de mini programme. J'espère que cet article pourra aider les lecteurs à mieux comprendre et appliquer ces deux fonctions, et à jouer un rôle dans le développement réel.

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