请用PHP和html写一个完整图床
以下是一个简单的PHP和HTML代码示例,用于实现一个基本的图床:
<!DOCTYPE html>
<html>
<head>
<title>图床</title>
</head>
<body>
<h1>图床</h1>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="image">
<input type="submit" value="上传">
</form>
<?php
if(isset($_GET['image'])) {
$image = $_GET['image'];
echo "<img src='$image'>";
}
?>
</body>
</html>
在同一目录下创建一个名为"upload.php"的PHP文件,用于处理上传图片的逻辑:
<?php
if(isset($_FILES['image'])) {
$file = $_FILES['image'];
$fileName = $file['name'];
$fileTmp = $file['tmp_name'];
$fileExt = strtolower(pathinfo($fileName, PATHINFO_EXTENSION));
$allowedExt = array('jpg', 'jpeg', 'png', 'gif');
if(in_array($fileExt, $allowedExt)) {
$newFileName = uniqid('', true) . '.' . $fileExt;
$destination = 'uploads/' . $newFileName;
move_uploaded_file($fileTmp, $destination);
$imageUrl = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/uploads/' . $newFileName;
header("Location: index.php?image=$imageUrl");
exit;
}
else {
echo "只允许上传jpg、jpeg、png和gif格式的图片";
}
}
?>
上述代码会在同一目录下创建一个名为"uploads"的文件夹,用于存储上传的图片。通过表单上传图片后,会将图片保存到"uploads"文件夹中,并在页面上显示上传的图片。
注意:这只是一个简单的示例,可能存在一些安全风险和功能上的缺陷。在实际应用中,需要对上传的文件进行更严格的验证和处理
原文地址: https://www.cveoy.top/t/topic/iVOb 著作权归作者所有。请勿转载和采集!