图片上传 png/jpg

Image upload png/jpg

我在将图像从 SSL 安全网页上传到服务器时遇到问题,图像上传正确但不在所选路径中。

<?php
    if($_SERVER['REQUEST_METHOD'] == 'POST') {
        $errors = Array();
        if(isset($_POST['title'])) {
            if(trim($_POST['title']) != '') {
                if(strlen(trim($_POST['title'])) < 2) {
                    $errors[] = 'De titel is te kort (2).';
                }
            }else{
                $errors[] = 'De titel is leeg gelaten.';
            }
        }else{
            $errors[] = 'Er is geen titel meegestuurd.';
        }

        if(isset($_POST['category'])) {
            if(trim($_POST['category']) != '') {
                if(!in_array(trim($_POST['category']), array_flip($config['general']['cat']))) {
                    $errors[] = 'Deze catagorie bestaat niet!';
                }
            }else{
                $errors[] = 'Catagorie is leeg gelaten.';
            }
        }else{
            $errors[] = 'Er is geen catagorie meegestuurd.';
        }   

        if(isset($_POST['graad'])) {
            if(trim($_POST['graad']) != '') {
                if(!in_array(trim($_POST['graad']), array_flip($config['general']['graad']))) {
                    $errors[] = 'Deze moeilijksheidgraad bestaat niet!';
                }
            }else{
                $errors[] = 'Moeilijkheidsgraad is leeg gelaten.';
            }
        }else{
            $errors[] = 'Er is geen moeilijksheidgraad meegestuurd.';
        }   

        if(isset($_POST['description'])) {
            if(trim($_POST['description']) != '') {
                if(strlen(trim($_POST['description'])) < 5) {
                    $errors[] = 'De bereidingstekst is te kort (5).';
                }
            }else{
                $errors[] = 'De bereidingstekst is leeg gelaten.';
            }
        }else{
            $errors[] = 'Er is geen bereidingstekst meegestuurd.';
        }   

        if(isset($_FILES['photo'])) {
            if($_FILES['photo']['type'] != '') {
                if($_FILES['photo']['type'] != 'image/jpeg') {
                    $errors[] = 'Uw foto is geen JPG afbeelding.';
                }
            }
        }

        if(isset($_POST['time'])) {
            if(trim($_POST['time']) != '') {
                if(strlen(trim($_POST['time'])) < 1) {
                    $errors[] = 'De bereidingstijd is te kort (5).';
                }
            }else{
                $errors[] = 'De bereidingstijd is leeg gelaten.';
            }
        }else{
            $errors[] = 'Er is geen bereidingstijd meegestuurd.';
        }                                   

        if(count($errors) == 0) {
            $title = trim($_POST['title']);
            $category = trim($_POST['category']);
            $graad = trim($_POST['graad']);
            $description = trim($_POST['description']);
            $time = trim($_POST['time']);
            $update = $dbh->prepare('UPDATE recettes SET title = :title, category = :category, graad = :graad, description = :description, time = :time WHERE id = :id');
            $update->bindParam(':title', $title, PDO::PARAM_STR);
            $update->bindParam(':category', $category, PDO::PARAM_STR);
            $update->bindParam(':graad', $graad, PDO::PARAM_STR);
            $update->bindParam(':description', $description, PDO::PARAM_STR);
            $update->bindParam(':time', $time, PDO::PARAM_STR);
            $update->bindParam(':id', $_GET['id'], PDO::PARAM_INT);
            $update->execute();
            if(isset($_FILES['photo']) && $_FILES['photo']['type'] != '') {
                if(file_exists('/home/joshua3/domains/recettes.nl/public_html/uploads/photo-' . $uid . '.jpg')) {
                    unlink('/home/joshua3/domains/recettes.nl/public_html/uploads/photo-' . $uid . '.jpg');
                }
                move_uploaded_file($_FILES['photo']['tmp_name'], '/home/joshua3/domains/recettes.nl/public_html/uploads/photo-' . $uid . '.jpg');
            }
            echo '<font color="green">De instellingen zijn succesvol opgeslagen</font><meta http-equiv="refresh" content="1;url=https://www.recettes.nl/edit/' .$_GET['id']. '">';
            $edited = true;
        }else{
            echo 'Er ging wat mis. De volgende dingen gingen fout:<ul><li>' . join('</li><li>', $errors) . '</li></ul>De instellingen zijn niet opgeslagen, probeer het opnieuw.';
        }
    }
    if(!isset($edited)) {
?>

问题解决了一次,但在编辑和更改服务器后,问题又出现了。

<div class="grid desk-12 both">
<div class="form-label">Afbeelding<font color="red">**</font></div>
<div class="form-description">Wij ondersteunen alle afbeelding formaten. Wij accepteren alleen .jpg formaat.</div>
<input type="file" name="photo" multiple="multiple" class="multi with-preview">
</div>

下面是表格的标题>

<form action="" method="post" enctype="multipart/form-data">

映射 'uploads' 已经是 chmod 777。

你能帮我解决这个问题吗?

<form action="" method="post" enctype="multipart/form-data">

在您输入后启动,将您的输入放在表单标签内。