以下是一个简单的PHP文件上传代码示例,包括HTML表单和PHP处理部分。
1、HTML表单:创建一个包含文件输入字段的表单,用于选择要上传的文件。
<!DOCTYPE html> <html> <head> <title>文件上传</title> </head> <body> <form action="upload.php" method="post" enctype="multipart/formdata"> <input type="file" name="fileToUpload" id="fileToUpload"> <input type="submit" value="上传文件" name="submit"> </form> </body> </html>
2、PHP处理部分:在upload.php
文件中,编写处理文件上传的PHP代码,首先检查是否有文件被上传,然后检查文件类型是否允许,最后将文件保存到服务器上的指定目录。
<?php // 定义允许上传的文件类型 $allowedFileTypes = array("jpg", "jpeg", "png", "gif"); // 检查是否有文件被上传 if (isset($_FILES["fileToUpload"])) { $file = $_FILES["fileToUpload"]; $fileName = basename($file["name"]); $fileType = pathinfo($fileName, PATHINFO_EXTENSION); // 检查文件类型是否允许 if (in_array($fileType, $allowedFileTypes)) { $targetDir = "uploads/"; $targetFilePath = $targetDir . $fileName; $fileSize = $file["size"]; // 检查目标目录是否存在,如果不存在则创建 if (!file_exists($targetDir)) { mkdir($targetDir, 0777, true); } // 将文件从临时目录移动到目标目录 if (move_uploaded_file($file["tmp_name"], $targetFilePath)) { echo "文件 " . $fileName . " 已成功上传。"; } else { echo "文件上传失败。"; } } else { echo "不允许上传此类型的文件。"; } } else { echo "没有文件被上传。"; } ?>
这个示例中,我们首先定义了一个允许上传的文件类型数组$allowedFileTypes
,然后在upload.php
文件中检查是否有文件被上传,如果有文件被上传,我们将检查文件类型是否在允许的类型数组中,如果文件类型允许,我们将文件保存到服务器上的uploads
目录。
下面是一个基本的PHP文件上传代码示例,以及它对应的HTML介绍形式的布局。
<table border="1"> <tr> <th>HTML 文件上传表单</th> <th>PHP 文件上传处理代码</th> </tr> <tr> <td> <!HTML 文件上传表单 > <form action="upload.php" method="post" enctype="multipart/formdata"> <input type="file" name="fileToUpload" id="fileToUpload"> <input type="submit" value="上传文件" name="submit"> </form> </td> <td> <!PHP 文件上传处理代码 > <?php // upload.php if (isset($_POST["submit"])) { $target_dir = "uploads/"; // 上传文件保存的目录 $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); // 包含路径的文件名 $uploadOk = 1; // 用于检查文件上传是否OK的标志 // 检查是否有文件被选中 if (empty($_FILES["fileToUpload"]["tmp_name"])) { echo "请选择一个文件上传。"; $uploadOk = 0; } // 检查文件是否已经存在 if (file_exists($target_file)) { echo "抱歉,文件已经存在。"; $uploadOk = 0; } // 检查文件大小等其它验证,这里省略... // 如果一切OK,上传文件 if ($uploadOk == 1) { if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) { echo "文件 ". htmlspecialchars(basename($_FILES["fileToUpload"]["name"])). " 已上传。"; } else { echo "很抱歉,文件上传时出现了错误。"; } } } ?> </td> </tr> </table>
注意:这个代码示例是非常基础的,仅用于说明目的,在实际应用中,你还需要添加更多的验证和错误处理,比如检查文件类型、大小限制等,以确保安全性。
在上面的代码中,左侧的单元格包含了一个HTML表单,用于选择和上传文件;右侧的单元格包含了PHP代码,用于处理上传的文件,在实际部署时,PHP代码应该位于单独的upload.php
文件中,而不是直接嵌入HTML页面中。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/696531.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复