Загрузка изображения в filepath с использованием PDO и sql без загрузки - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь загрузить изображение в путь к файлу и не могу заставить его работать.это код, который я использовал раньше, и все работало нормально.Я проверил разрешения и все в порядке.Понятия не имею, что я делаю не так ..

Проверены все разрешения и все вроде ОК. Сервер способен загружать через PHP

 if (isset($_POST['file'])) {

$targetDir = "../images/gallery-images/";
$fileName = basename($_FILES["file"]["name"]);
$targetFilePath = $targetDir . $fileName;
$fileType = pathinfo($targetFilePath,PATHINFO_EXTENSION);

$allowTypes = array('jpg','png','jpeg','gif','pdf');

if(in_array($fileType, $allowTypes)){
    move_uploaded_file($_FILES["file"]["tmp_name"], $targetFilePath);
}

if (empty($fileName)) {
    $error = 'All fields are required!';
} else {
        $query = $pdo->prepare('INSERT INTO gallery gallery_image VALUES ?');
        $query->bindValue(1, $fileName);
        $query->execute();
        header('Location: gallery.php');
    }
}

/ * FORM * /

<form class="add-new-post" method="POST" action="gallery.php"  enctype="multipart/form-data">
    <div class="form-group">
        <label class="" for="featured">Add Image - 500px x 300px:</label>
         <input type="file" class="ml-3" name="file">
    </div>
    <input class="btn btn-sm btn-accent ml-auto" type="submit" value="Add Image" />
</form>

В основном ничего не происходит ...

1 Ответ

0 голосов
/ 14 февраля 2019

Проверьте, если file_uploads = off измените значение на file_uploads=On в php.ini

и исправьте запрос, чтобы он был похож на

$sth = $dbh->prepare('INSERT INTO table_name (column1) VALUES (:calories) ');
$sth->bindParam(':calories', $calories);
$sth->execute();

, а также попробуйте использовать strtolower();

$fileType = strtolower(pathinfo($targetFilePath,PATHINFO_EXTENSION));
$allowTypes = array('jpg','png','jpeg','gif','pdf');

if(in_array($fileType, $allowTypes)){
    move_uploaded_file($_FILES["file"]["tmp_name"], $targetFilePath);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...