php图像上传无法将图像保存到ftp

php图像上传无法将图像保存到ftp,php,Php,我正在尝试将图像上载到文件夹,但图像不会上载,我尝试了以下代码: tutorialspoint.com/php/php\u file\u upload.htm 或 www.w3schools.com/php/php\u file\u upload.asp 但它永远不会上传图片,而且我已经授予777文件夹和文件本身的权利。有人知道原因是什么吗 我的代码如下所示: <!DOCTYPE html> <html> <head> <meta charset="UT

我正在尝试将图像上载到文件夹,但图像不会上载,我尝试了以下代码:

tutorialspoint.com/php/php\u file\u upload.htm 或 www.w3schools.com/php/php\u file\u upload.asp 但它永远不会上传图片,而且我已经授予777文件夹和文件本身的权利。有人知道原因是什么吗

我的代码如下所示:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Fds upload</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
</head>
<body>
    <form method="post">
        Enter username:
        <input type="username" placeholder="Enter username">
        Enter password:
        <input type="password" placeholder="Enter password">
        Enter design name:
        <input type="text" name="design_name" placeholder="Enter name" class="form-control">
        Select gender:
        <select name="fds_gender" id="fds_gender">
            <option value="stud">Male</option>
            <option value="babe">Female</option>
        </select>
        Select category:
        <select name="categories" id="fds_categories">
            <option value="20080687">Hairs: 25 Zcard</option>
            <option value="20080847">Shirts: 1000 Zbucks</option>
            <option value="20080836">Shirts: 25 Zcard</option>
            <option value="20080934">Jackets: 25 Zcard</option>
            <option value="20080934">Jackets: 25 Zcard</option>
            <option value="20080849">Bottoms: 25 Zcard</option>
            <option value="20080988">Shoes: 800 Zbucks</option>
            <option value="20080992">Shoes: 25 Zcard</option>
            <option value="20081034">Gloves: 25 Zcard</option>
            <option value="20081014">Belts: 500 Zbucks</option>
            <option value="20081015">Belts: 25 Zcard</option>
            <option value="20081004">Scarves: 10 Zcard</option>
            <option value="20080941">Hats: 10 Zcard</option>
            <option value="20080834">Bags: 20 Zcard</option>
            <option value="20081049">Misc: 25 Zcard</option>
            <option value="20081020">Masks: 10 Zcard</option>
        </select>
        Select image to upload:
        <input type="file" name="fileToUpload" id="fileToUpload">
        <button type="submit">Upload design</button>
    </form>

    <?php
        if(!empty($_POST)){
            // Image upload code using the following foldername: uploads
        }
    ?>

    <script type="text/javascript">
        $(document).ready(function(){
            $("#fds_gender").change(function () {
                var gender = $(this).val();
                $.ajax({
                    type: "POST",
                    data: {
                        "gender" : gender
                    },
                    url: "ajax/fds_categories_ajax.php",
                    success: function(data){
                        $("#fds_categories").empty();
                        $.each($.parseJSON(data), function(index, element) {
                            if(gender == 'stud'){
                                if(element.p == 0){
                                    $("#fds_categories").append(
                                        $('<option></option>').val(element.id).html(element.name + ": " + element.pb + ' Zbucks')
                                    );
                                }else{
                                    $("#fds_categories").append(
                                        $('<option></option>').val(element.id).html(element.name + ": " + element.p + ' Zcard')
                                    );
                                }
                            }else{
                                if(element.p == 0){
                                    $("#fds_categories").append(
                                        $('<option></option>').val(element.id).html(element.name + ": " + element.pb + ' Zbucks')
                                    );
                                }else{
                                    $("#fds_categories").append(
                                        $('<option></option>').val(element.id).html(element.name + ": " + element.p + ' Zcard')
                                    );
                                }
                            }
                        });
                    }
                });
            });
        });
    </script>
</body>
</html>

Fds上传
输入用户名:
输入密码:
输入设计名称:
选择性别:
男性
女性
选择类别:
头发:25兹卡
衬衫:1000件
衬衫:25美元
夹克:25美元
夹克:25美元
底部:25兹卡
鞋子:800件
鞋子:25美元
手套:25卡
皮带:500支
皮带:25卡
围巾:10美元
帽子:10美元
行李:20美元
杂项:25美元
口罩:10张
选择要上载的图像:
上传设计
$(文档).ready(函数(){
$(“#fds#U性别”)。更改(功能(){
var gender=$(this.val();
$.ajax({
类型:“POST”,
数据:{
“性别”:性别
},
url:“ajax/fds_categories_ajax.php”,
成功:功能(数据){
$(“#fds#U类别”).empty();
$.each($.parseJSON(数据)、函数(索引、元素){
如果(性别==‘螺柱’){
if(element.p==0){
$(“#fds#U类别”)。追加(
$('').val(element.id).html(element.name+“:“+element.pb+'Zbucks”)
);
}否则{
$(“#fds#U类别”)。追加(
$(“”).val(element.id).html(element.name+“:“+element.p+'Zcard”)
);
}
}否则{
if(element.p==0){
$(“#fds#U类别”)。追加(
$('').val(element.id).html(element.name+“:“+element.pb+'Zbucks”)
);
}否则{
$(“#fds#U类别”)。追加(
$(“”).val(element.id).html(element.name+“:“+element.p+'Zcard”)
);
}
}
});
}
});
});
});

请确保表单具有正确的参数,如:enctype=“multipart/form data”

请确保表单具有正确的参数,如:enctype=“multipart/form data”

正如@corey所指出的,在处理文件上载时,需要将表单的
enctype
属性设置为
多部分/表单数据。在许多情况下,添加隐藏输入以限制文件大小是可能的,事实上也是可取的,以防止大型文件需要很长时间才能处理/失败,但这并不是必需的。在服务器端,需要检查的是
$\u文件
数组,而不是
$\u POST

<form method="post" enctype='multipart/form-data'>
    Enter username:
    <input type="username" placeholder="Enter username">
    Enter password:
    <input type="password" placeholder="Enter password">
    Enter design name:
    <input type="text" name="design_name" placeholder="Enter name" class="form-control">
    Select gender:
    <select name="fds_gender" id="fds_gender">
        <option value="stud">Male</option>
        <option value="babe">Female</option>
    </select>
    Select category:
    <select name="categories" id="fds_categories">
        <option value="20080687">Hairs: 25 Zcard</option>
        <option value="20080847">Shirts: 1000 Zbucks</option>
        <option value="20080836">Shirts: 25 Zcard</option>
        <option value="20080934">Jackets: 25 Zcard</option>
        <option value="20080934">Jackets: 25 Zcard</option>
        <option value="20080849">Bottoms: 25 Zcard</option>
        <option value="20080988">Shoes: 800 Zbucks</option>
        <option value="20080992">Shoes: 25 Zcard</option>
        <option value="20081034">Gloves: 25 Zcard</option>
        <option value="20081014">Belts: 500 Zbucks</option>
        <option value="20081015">Belts: 25 Zcard</option>
        <option value="20081004">Scarves: 10 Zcard</option>
        <option value="20080941">Hats: 10 Zcard</option>
        <option value="20080834">Bags: 20 Zcard</option>
        <option value="20081049">Misc: 25 Zcard</option>
        <option value="20081020">Masks: 10 Zcard</option>
    </select>
    Select image to upload:
    <input type="hidden" name="MAX_FILE_SIZE" value="2097152" />
    <input type="file" name="fileToUpload" id="fileToUpload">
    <button type="submit">Upload design</button>
</form>

<?php

    $field='fileToUpload';
    $dir = 'uploads';

    if( isset( $_FILES[ $field ] ) ){

        $name   =   $_FILES[ $field ]['name'];
        $size   =   $_FILES[ $field ]['size'];
        $tmp    =   $_FILES[ $field ]['tmp_name'];
        $type   =   $_FILES[ $field ]['type'];
        $ext    =   strtolower( pathinfo( $name, PATHINFO_EXTENSION ) );
        $target =   realpath( $_SERVER['DOCUMENT_ROOT'] . '/' . $dir );

        if( $target ) $result   =   move_uploaded_file( $tmp, $target . $name );
        echo $result ? 'Success' : 'Failed';
    }
?>

输入用户名:
输入密码:
输入设计名称:
选择性别:
男性
女性
选择类别:
头发:25兹卡
衬衫:1000件
衬衫:25美元
夹克:25美元
夹克:25美元
底部:25兹卡
鞋子:800件
鞋子:25美元
手套:25卡
皮带:500支
皮带:25卡
围巾:10美元
帽子:10美元
行李:20美元
杂项:25美元
口罩:10张
选择要上载的图像:
上传设计

正如@corey所指出的,在处理文件上载时,需要将表单的
enctype
属性设置为
多部分/表单数据。在许多情况下,添加隐藏输入以限制文件大小是可能的,事实上也是可取的,以防止大型文件需要很长时间才能处理/失败,但这并不是必需的。在服务器端,需要检查的是
$\u文件
数组,而不是
$\u POST

<form method="post" enctype='multipart/form-data'>
    Enter username:
    <input type="username" placeholder="Enter username">
    Enter password:
    <input type="password" placeholder="Enter password">
    Enter design name:
    <input type="text" name="design_name" placeholder="Enter name" class="form-control">
    Select gender:
    <select name="fds_gender" id="fds_gender">
        <option value="stud">Male</option>
        <option value="babe">Female</option>
    </select>
    Select category:
    <select name="categories" id="fds_categories">
        <option value="20080687">Hairs: 25 Zcard</option>
        <option value="20080847">Shirts: 1000 Zbucks</option>
        <option value="20080836">Shirts: 25 Zcard</option>
        <option value="20080934">Jackets: 25 Zcard</option>
        <option value="20080934">Jackets: 25 Zcard</option>
        <option value="20080849">Bottoms: 25 Zcard</option>
        <option value="20080988">Shoes: 800 Zbucks</option>
        <option value="20080992">Shoes: 25 Zcard</option>
        <option value="20081034">Gloves: 25 Zcard</option>
        <option value="20081014">Belts: 500 Zbucks</option>
        <option value="20081015">Belts: 25 Zcard</option>
        <option value="20081004">Scarves: 10 Zcard</option>
        <option value="20080941">Hats: 10 Zcard</option>
        <option value="20080834">Bags: 20 Zcard</option>
        <option value="20081049">Misc: 25 Zcard</option>
        <option value="20081020">Masks: 10 Zcard</option>
    </select>
    Select image to upload:
    <input type="hidden" name="MAX_FILE_SIZE" value="2097152" />
    <input type="file" name="fileToUpload" id="fileToUpload">
    <button type="submit">Upload design</button>
</form>

<?php

    $field='fileToUpload';
    $dir = 'uploads';

    if( isset( $_FILES[ $field ] ) ){

        $name   =   $_FILES[ $field ]['name'];
        $size   =   $_FILES[ $field ]['size'];
        $tmp    =   $_FILES[ $field ]['tmp_name'];
        $type   =   $_FILES[ $field ]['type'];
        $ext    =   strtolower( pathinfo( $name, PATHINFO_EXTENSION ) );
        $target =   realpath( $_SERVER['DOCUMENT_ROOT'] . '/' . $dir );

        if( $target ) $result   =   move_uploaded_file( $tmp, $target . $name );
        echo $result ? 'Success' : 'Failed';
    }
?>

输入用户名:
输入密码:
输入设计名称:
选择性别:
男性
女性
选择类别:
头发:25兹卡
衬衫:1000件
衬衫:25美元
夹克:25美元
夹克:25美元
底部:25兹卡
鞋子:800件
鞋子:25美元
手套:25卡
皮带:500支
皮带:25卡
围巾:10美元
帽子:10美元
行李:20美元
杂项:25美元
口罩:10张
选择要上载的图像:
上传设计

处理上传的代码在哪里?测试了我发布的php URL的代码这里是处理上传的代码?测试了我发布的php URL的代码