


Comment implémenter la fonction de téléchargement d'image en php
Comment PHP implémente la fonction de téléchargement d'images : créez d'abord un dossier pour stocker les images ; puis créez la partie HTML ; puis créez le fichier "uploadHandler.php" et enfin comparez le format d'image du fichier avec les éléments qu'il contient ; le tableau et téléchargez-le simplement.
Recommandé : "Tutoriel vidéo PHP"
Opération de téléchargement d'images en PHP
Dans la programmation frontale, nous devons parfois permettre aux téléspectateurs de télécharger une certaine image. Nous pouvons implémenter cette fonction via PHP.
1. Créez un dossier pour stocker les images
Ici, nous créons le dossier « fichier » pour stocker les images téléchargées par l'utilisateur. À ce moment, le dossier est vide, et le dossier. l'adresse de création peut être C'est votre choix, mais il est préférable de la construire dans un endroit facilement accessible.
2. Créez la partie HTML (uploadfile.html)
Ici, nous utilisons la balise form form du HTML, et le code
<input type="file">来选择图片文件 <input type="submit">来提交图片相关信息
dans le formulaire est le suivant :
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <form action="uploadHandler.php" method="post" enctype="multipart/form-data"> Upload Img:<input type="file" name="img"/> <input type="submit" value="Upload"/> </form> </body> </html>
Remarque :
1. L'action dans le formulaire est connectée au fichier .php qui sera créé ultérieurement pour gérer le téléchargement d'images.
2. Enctype="multipart/form-data" doit être noté dans l'attribut form. L'attribut enctype spécifie comment les données du formulaire sont codées avant d'être envoyées au serveur. multipart/form-data n'encode pas les caractères. Cette valeur est obligatoire lors de l'utilisation d'un formulaire avec un contrôle de téléchargement de fichier.
3. Ici, nous utilisons la méthode post.
3. Créez la partie PHP (uploadHandler.php)
1. Principe
Nous créons un fichier php et entrons seulement
<?php var_dump($_FILES); ?>
Ensuite, nous A le tableau correspondant arr(1) sera imprimé.
La structure du tableau de arr(1) est :
array(1) { ["img"]=> array(5) { ["name"]=> string(**) "AAAAAAA.jpg" // 图片名 ["type"]=> string(10) "image/jpeg" // 图片格式 ["tmp_name"]=> string(45) "/Applications/XAMPP/xamppfiles/temp/phpVZQY0m" // 图片缓存地址 ["error"]=> int(0) // 上传图片错误数 ["size"]=> int(124246) // 图片大小 } }
Il y a un élément ["img"] sous le tableau tableau, et sous ["img"] c'est un élément bidimensionnel tableau, ce Le tableau bidimensionnel comporte cinq éléments, à savoir : nom / type / nom_tmp / erreur / taille.
Grâce à ces attributs, nous obtenons les informations de base d'une image. Ensuite, nous devons juger ces attributs de base et enregistrer l'image dans un dossier.
2. Fonctionnement réel
Faites le jugement suivant :
erreur [Oui] : erreur d'invite ❌
erreur [Non] : étape suivante✅
╙type[non-img] : erreur d'invite ❌
╙type[img] : étape suivante✅
╙type[non-jpeg] : erreur d'invite ❌
ˆ ˆ ˆ╙type[jpeg] : Étape suivante✅
˜ Si les jugements ci-dessus sont satisfaits, alors nous pensons que cette image peut être enregistrée.
Pour éviter la duplication du nom des images, nous utilisons le concept d'horodatage pour les fusionner en un nouveau nom de fichier afin que chaque image porte un nom unique.
Et nous pouvons créer un tableau, les éléments du tableau sont différents formats d'image, comparez le format d'image du fichier avec les éléments du tableau, les formats d'image que nous ne reconnaissons pas ne seront pas enregistrés.
Le code est le suivant :
<?php // 接收文件 var_dump($_FILES); // 区别于$_POST、$_GET print_r($_FILES); $file = $_FILES["img"]; // 先判断有没有错 if ($file["error"] == 0) { // 成功 // 判断传输的文件是否是图片,类型是否合适 // 获取传输的文件类型 $typeArr = explode("/", $file["type"]); if($typeArr[0]== "image"){ // 如果是图片类型 $imgType = array("png","jpg","jpeg"); if(in_array($typeArr[1], $imgType)){ // 图片格式是数组中的一个 // 类型检查无误,保存到文件夹内 // 给图片定一个新名字 (使用时间戳,防止重复) $imgname = "file/".time().".".$typeArr[1]; // 将上传的文件写入到文件夹中 // 参数1: 图片在服务器缓存的地址 // 参数2: 图片的目的地址(最终保存的位置) // 最终会有一个布尔返回值 $bol = move_uploaded_file($file["tmp_name"], $imgname); if($bol){ echo "上传成功!"; } else { echo "上传失败!"; }; }; } else { // 不是图片类型 echo "没有图片,再检查一下吧!"; }; } else { // 失败 echo $file["error"]; }; ?>
IV. Télécharger des photos
À ce stade, si tout répond aux exigences, les photos que nous avons téléchargées seront stockées dans le fichier. dossier . Téléchargement réussi !
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.
