所以我试图在我的localhost上通过php设置图像上传,运行代码并连接到数据库之后好了,我收到了上传的错误。由于表单的所有其他部分都在逐段检查后工作,我只需添加上传输入的html及其相关的php脚本。
<input type="file" name="image" id="image-select" />
上传后需要处理图片上传和验证的php部分:
$image = $_FILES ['image']['name'];
$type = @getimagesize ($_FILES ['image']['tmp_name']);
//Never assume image will upload okay
if ($_FILES['image']['error'] !== UPLOAD_ERR_OK) {
die("Upload failed with error code " . $_FILES['image']['error']);
}
//Where the file will be placed
$target_path = "uploads/";
// Add the original filename to target path
$path= $target_path . basename($image);
// Check if the image is invalid before continuing
if($type === FALSE || !($type[2] === IMAGETYPE_TIFF || $type[2] === IMAGETYPE_JPEG || $type[2] === IMAGETYPE_PNG)) {
echo '<script "text/javascript">alert("This is not a valid image file!")</script>';
die("This is not a valid image file!");
} else {
move_uploaded_file($_FILES['image']['tmp_name'], $path);
}
一旦代码点击上传过程,就会出现错误。我试图上传一个小的PNG文件我添加的相关代码在它们出现在脚本中时也是各自的命令。
答案 0 :(得分:0)
因为你还没有提供你的表格标签,但是你记得enctype属性不是吗?
对不起,我没有50个声誉,否则我会将此作为评论。
<form enctype='multipart/form-data' action=''>
<input type="file" name="image" id="image-select" />
</form>
此外,您应该在调用getimagesize()之前检查文件是否已上传(不是这将是您的问题的来源)
答案 1 :(得分:0)
如果您使用 PHP5 和 Imagick ,那么您可以尝试使用以下内容:
$image->readImageFile($f);
答案 2 :(得分:0)
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="image" id="image-select" />
<input type="submit" value="Submit">
</form>