Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法通过PHP将图像上载到FTP_Php_Html_File_Upload - Fatal编程技术网

无法通过PHP将图像上载到FTP

无法通过PHP将图像上载到FTP,php,html,file,upload,Php,Html,File,Upload,我目前有一些问题,试图让我的php上传表单的工作。我得到这个错误。。。很抱歉,上载文件时出错 ftp连接如果工作正常,我只是不确定什么会阻止上传 这是php $target_dir = "photos/"; $target_file = $target_dir . basename($_FILES["photo"]["name"]); $uploadOk = 1; $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION); // Che

我目前有一些问题,试图让我的php上传表单的工作。我得到这个错误。。。很抱歉,上载文件时出错

ftp连接如果工作正常,我只是不确定什么会阻止上传

这是php

$target_dir = "photos/";
$target_file = $target_dir . basename($_FILES["photo"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["photo"]["tmp_name"]);
    if($check !== false) {
        echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}
if ($_FILES["photo"]["size"] > 500000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
    $uploadOk = 0;
}
if ($uploadOk == 0) {
    echo "Sorry, your file was not uploaded.";
} else {
    if (move_uploaded_file($_FILES["photo"]["tmp_name"], $target_file)) {
        echo "The file ". basename( $_FILES["photo"]["name"]). " has been uploaded.";
    } else {
        echo "Sorry, there was an error uploading your file.";
    }
}
$res=mysql_query("INSERT INTO Photos (image_name, thumb, photo, photo_alt) VALUES 
('$_POST[image_name]', '$_POST[thumb]', '$_POST[photo]', '$_POST[photo_alt]')");

    if (array_key_exists ('check_submit', $_POST )) 

    if (!$res) {
        die('Invalid query: ' . mysql_error());
    }

    ?>
还有html

    <input type ="hidden" value="1" name="check_submit" enctype="multipart/form-data"/>

     Please Enter Name: <input type ="text" name="image_name" /> <br />

     Tags: <input type ="text" name="photo_alt" /> <br />

     thumb  <input type="file" name="thumb" /><br/>

     image  <input type="file" name="photo" /><br/>

    <input type ="submit" name"Submit" /><br />

</form>


请输入名称:
标签:
拇指
图像


感谢阅读。

enctype属性应该在表单标记本身中

<form action="photos-upload.php" name="Myform" method="post" enctype="multipart/form-data">


如果这是问题所在,它会输出“抱歉,您的文件未上载。”@Ja͢ck但是,如果没有为表单标记中的
enctype
属性提供正确的值,上传失败。我的意思是他应该先解决这个问题,然后再寻找其他原因。我猜你当时不明白我的意思;我想说的是,从前面提到的错误判断,这不可能是问题所在,不管你说的是正确的。非常感谢,这确实有效,文件现在进入ftp文件夹。我现在唯一的问题是文件名不再被插入数据库,有什么想法吗?没有错误,我知道sql查询可以工作,因为如果我删除图像上传内容,名称就会进入数据库,上面编辑了新代码。ThanksIt可能是一个许可问题;您的脚本是否具有/photos/的写入权限?