Загрузите картинку из формы php

Как мне загрузить фотографию из формы php, а затем распечатать эту фотографию на следующей странице с помощью метода POST.Также я хочу сохранить эту фотографию в базе данных mysql.

Вот мой html-код

<form enctype = "multipart/form-data" action = "form.php" method = "POST">
  <h3><input name = "fileupload" type = "file" id = "fileToUpload" />
  </h3>
<input type = "submit" name ='submit' value = "Submit" />
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
44
1

Ответы 1

HTML-форма

<form enctype = "multipart/form-data" action = "./action.php" 
       method = "POST">
     <h3><input name = "fileupload" type = "file" id = "fileToUpload" /></h3>
     <input type = "submit" name ='submit' value = "Submit" />
</form>

PHP-скрипт для загрузки изображения

action.php

if (isset($_FILES)) {
 $file   =   UploadImage();

    // If success, show image
    if ($file != false) { ?>

        <img src = "<?php echo $file['localpath']; ?>" />
    <?php
        }

}
function UploadImage($settings = false)
        {
            // Input allows you to change where your file is coming from so you can port this code easily
            $inputname      =   (isset($settings['input']) && !empty($settings['input']))? $settings['input'] : "fileupload";
            // Sets your document root for easy uploading reference
            $root_dir       =   (isset($settings['root']) && !empty($settings['root']))? $settings['root'] : $_SERVER['DOCUMENT_ROOT'];
            // Allows you to set a folder where your file will be dropped, good for porting elsewhere
            $target_dir     =   (isset($settings['dir']) && !empty($settings['dir']))? $settings['dir'] : "/uploads/";
            // Check the file is not empty (if you want to change the name of the file are uploading)
            if (isset($settings['filename']) && !empty($settings['filename']))
                $filename   =   $settings['filename'];
            // Use the default upload name
            else
                $filename   =   preg_replace('/[^a-zA-Z0-9\.\_\-]/',"",$_FILES[$inputname]["name"]);
            // If empty name, just return false and end the process
            if (empty($filename))
                return false;
            // Check if the upload spot is a real folder
            if (!is_dir($root_dir.$target_dir))
                // If not, create the folder recursively
                mkdir($root_dir.$target_dir,0755,true);
            // Create a root-based upload path
            $target_file    =   $root_dir.$target_dir.$filename;
            // If the file is uploaded successfully...
            if (move_uploaded_file($_FILES[$inputname]["tmp_name"],$target_file)) {
                    // Save out all the stats of the upload
                    $stats['filename']  =   $filename;
                    $stats['fullpath']  =   $target_file;
                    $stats['localpath'] =   $target_dir.$filename;
                    $stats['filesize']  =   filesize($target_file);
                    // Return the stats
                    return $stats;
                }
            // Return false
            return false;
        }

Вывод

// This is what the array  on the return of successful upload:
Array
(
    [filename] => bear.png
    [fullpath] => /opt/lampp/htdocs/uploads/bear.png
    [localpath] => /uploads/bear.png
    [filesize] => 69631
)

после успешной загрузки вы получите имя файла по $ file ['filename'] и полный путь по $ file ['fullpath']. вы можете сохранить имя файла или путь к файлу в своей таблице БД.

Другие вопросы по теме