在php中上载文件时出错
使用Dreamweaver CS6,我上传文件时遇到问题 错误为“无效文件” 这是我的代码:在php中上载文件时出错,php,Php,使用Dreamweaver CS6,我上传文件时遇到问题 错误为“无效文件” 这是我的代码: <?php $allowedExts = array("gif", "jpeg", "jpg", "png"); $temp = explode(".", $_FILES["file"]["name"]); $extension = end($temp); if ((($_FILES["file"]["type"] == "image/gif") ||
<?php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
}
else
{
echo "Invalid file";
}
?>
尝试以下方法:
if ($_FILES["file"]["error"]== 0) {
$upload_dir = dirname(__FILE__) . "/photos/";
if (file_exists($upload_dir)) {
if (is_writable($upload_dir)) {
$target = $upload_dir;
$newName=$_SESSION['theUsername'];
$target = $target . basename($newName);
$moved = move_uploaded_file($_FILES['file']['tmp_name'], "$target");
} else {
echo 'Upload directory is not writable<br>';
}
} else {
echo 'Upload directory does not exist.<br>';
}
}
if($\u文件[“文件”][“错误”]==0){
$upload_dir=dirname(_文件)“/photos/”;
如果(文件存在($upload\U dir)){
if(可写($upload\u dir)){
$target=$upload\u dir;
$newName=$\会话['theUsername'];
$target=$target.basename($newName);
$moved=move_上传的_文件($_文件['file']['tmp_name'],“$target”);
}否则{
echo“上载目录不可写
”;
}
}否则{
echo“上载目录不存在。
”;
}
}
holy moly坏格式什么是echo$\u文件[“文件”][“类型”]代码>显示何时发生这种情况?还有许多情况下,您的代码会转到“Invalid File”语句。您应该将测试(文件类型、大小、扩展名)拆分为单独的if块,以了解失败的位置。可能表单没有enctype
,或者元素没有命名,等等。可能是任何内容。就我而言,我不是“去那里”@Populusyesenctype
可能是人们最常见的第一个错误:)