Afin de tester la fonction de téléchargement d'image et d'enregistrer le chemin de l'image dans la base de données, nous devons d'abord créer une nouvelle table de test test_img
.
CREATE TABLE test_img ( id int(4) UNSIGNED NOT NULL AUTO_INCREMENT, path varchar(100) default NULL, upload_time timestamp default CURRENT_TIMESTAMP, PRIMARY KEY(id) )engine=myisam DEFAULT charset=utf8
commande sql : Générez un numéro unique lors de l'insertion dans la table. Par exemple, s'il y a trop de données de test, l'identifiant continuera d'augmenter de lui-même. . Si vous souhaitez remettre l'identifiant à 1, vous pouvez essayer la commande suivante
alter table test_img auto_increment = 1
Créez un nouveau fichier img.html
pour sélectionner l'image téléchargée
<!DOCTYPE html><html lang="utf-8"><head> <meta charset="UTF-8"> <title>图片上传</title></head><body><form action="img.php" method="post" enctype="multipart/form-data"> 选择上传的图片: <input type="file" name="file" accept="image/*"> <br><br> <input type="submit" value="上传"></form>
. <form>
Le enctype
dans la balise contrôle s'il faut encoder et envoyer les données du formulaire, la valeur par défaut est application/x-www-form-urlencoded
, ce qui signifie que tous les caractères sont codés avant l'envoi. Le
值 | 描述 |
---|---|
application/x-www-form-urlencoded | 在发送前编码所有字符 ( 默认) |
multipart/form-data | 不对字符编码。在使用包含文件上传控件的表单时,必须使用该值 |
text/plain | 空格转换为 “+” 加号,但不对特殊字符编码 |
<🎜. La balise ><input>
limite le format de téléchargement accept
Trois nouveaux sont utilisés pour accepter et traiter les images img.php
pour obtenir le fichier image, ajouter le nom de fichier spécifique à la table de données $_FILES
, test_img
stockez le fichier image dans le dossier cible, move_uploaded_file
Effectuez un codage de caractères pour empêcher les images avec des noms chinois d'être tronquées après avoir été téléchargées iconv
<?php header("Content-Type: text/html;charset=utf-8"); $conn = new mysqli('localhost', 'root', '', 'test'); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $destination = '../upload/image/'; $file = $_FILES['file']; // 获取上传的图片 $filename = $file['name']; $insert = "INSERT INTO test_img (path) VALUES ('$filename')"; $test = move_uploaded_file($file['tmp_name'], $destination . iconv("UTF-8", "gb2312", $filename)); if ($insert && $test) { $conn->query($insert); } else { echo '上传失败' . '<br>'; } $select = 'SELECT path FROM test_img'; $result = $conn->query($select); while ($row = $result->fetch_assoc()) { echo "<img src=" . $destination . $row['path'] . " alt="Vous apprendre étape par étape comment utiliser PHP pour implémenter la fonction de téléchargement d'images" >"; }
print_r( $_FILES['file']); // Sortie des images téléchargées reçues Les informations suivantes sont obtenuesAprès avoir téléchargé avec succès l'image, les informations de l'image sous le tableau de données sont mises en correspondance avec les informations de l'image sous
et affichées en boucle.upload/image
Quatre au. fin
Ce qui précède n'est qu'une version approximative de la façon de télécharger des images en php. Vous pouvez essayer de modifier et d'améliorer certains détails vous-même. Si vous voulez bien apprendre, vous devez l'apprendre par vous-même. L'apprentissage dans le cloud ne peut qu'effleurer la surface. Si mon partage peut vous inspirer, pourquoi ne pas me donner un like pour m'encourager. Bien sûr, cela n'a pas d'importance si vous ne le donnez pas, je me pousserai aussi à apprendre. . ~Merci d'avoir lu, j'espère que vous gagnerez quelque chose Tutoriel recommandé : "tutoriel php"
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!