[*]
Внешний интерфейс (клиентская сторона):
У меня есть веб-приложение, созданное с использованием JavaScript и интерфейсной платформы: React.
[*]
Пользователи могут выбрать файл изображения профиля через поле ввода файла на веб-сайте.
[*]
Загрузка изображения профиля (клиент на сервер):
Я отправляю выбранный файл изображения профиля со стороны клиента в серверный скрипт с помощью запроса POST.
[*]
Код на стороне клиента создает объект FormData и добавляет к нему выбранный файл и соответствующие данные (например, имя пользователя).
[*]
Серверный скрипт (PHP):
На сервере у меня есть PHP-скрипт (storePFP.php), который обрабатывает входящие POST< /strong> запрос.
[*]
Скрипт PHP обрабатывает полученные данные, включая имя пользователя и файл изображения профиля, используя $_FILES[/b] и file_get_contents( 'php://input').
[*]
Скрипт сервера проверяет, существует ли пользователь в базе данных, и, если он найден, генерирует уникальное имя файла для изображения профиля, перемещает загруженный файл в назначенный каталог и записывает сведения об изображении в базу данных.< /п> [*]Отладка и ведение журнала:
Я реализовал операторы регистрации ошибок и отладки в своем PHP-скрипте для регистрации такой информации, как полученные данные JSON, заголовки, файлы и результаты запросов.
[*]
Я проверял потенциальные проблемы, такие как неверные данные запроса, неопределенные переменные или сбои запросов к базе данных.
[*]
Проблемы и вопросы:
Я столкнулся с некоторыми проблемами, связанными с неопределенными переменными ($uploadDirectory, $result ) и результаты запроса к базе данных не соответствуют ожиданиям.
[*]
Я изучил и предоставил отладочную информацию через журналы ошибок.
[*]
Альтернативное хранилище:
Я подумываю, можно ли хранить изображения профиля в другом общедоступном API.
const handleProfilePictureUpload = async (e) => { е.preventDefault(); const fileInput = document.querySelector('#fileInput'); константный файл = fileInput.files[0]; // Проверяем, выбран ли файл если (!файл) { setMessage('Пожалуйста, выберите изображение профиля для загрузки.'); возвращаться; } // Проверяем, поддерживается ли тип файла (gif, png или jpg) constallowedFileTypes = ['image/gif', 'image/png', 'image/jpeg', 'image/jpg']; if (!allowedFileTypes.includes(file.type)) { setMessage('Неверный тип файла. Выберите изображение в формате GIF, PNG, JPG или JPEG.'); возвращаться; } // Устанавливаем URL конечной точки API const URL = 'http://localhost:80/storePFP.php'; пытаться { // Создаем объект FormData для отправки файла const formData = новые FormData(); formData.append('имя пользователя', user.username); formData.append('profilePicture', файл); console.log(formData.get('profilePicture')); // Вызов API для загрузки изображения профиля const ответ = ожидание выборки (url, { метод: 'POST', тело: данные формы, }); константные данные = ждут ответа.json(); console.log(данные); // Проверяем, успешен ли ответ если (ответ.ок) { // Устанавливаем сообщение на основе данных ответа setMessage(data.message); } еще { // Устанавливаем сообщение об ошибке из ответа setMessage(data.message || 'Произошла ошибка при загрузке изображения профиля.'); } } поймать (ошибка) { // Регистрируем и отображаем общее сообщение об ошибке, если во время вызова API возникает исключение console.error('Ошибка загрузки изображения профиля:', error); setMessage('Произошла ошибка при загрузке изображения профиля.'); } }; // HTML-код, возвращаемый Выберите изображение профиля: Загрузить {"success":false,"message":"Неверные данные запроса"
Да, я проверил правильность путей (destinationPath)
Из журнала «Неверные данные запроса я получаю, что в противном случае»
if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (isset($data['username']) && isset($_FILES['profilePicture'])) { ЕЩЕ:
произошло
console.log(formData) вернул:
1.
Файл
[*]
Последнее изменение: 1703941829454
[*]
lastModifiedDate: суббота, 30 декабря 2023 г., 14:10:29 GMT+0100 (Mitteleuropäische Normalzeit) {}
[*]
имя: "361273270047920240_1595864818.jpg"
[*]
размер: 7197
[*]
Введите: «изображение/jpeg»
[*]
webkitRelativePath: ""
[*]
[[Прототип]]: Файл
Сохранение изображения с помощью PHP ⇐ Php
Кемеровские программисты php общаются здесь
1704383162
Anonymous
[*]
[b]Внешний интерфейс (клиентская сторона):[/b]
У меня есть веб-приложение, созданное с использованием JavaScript и интерфейсной платформы: React.
[*]
Пользователи могут выбрать файл изображения профиля через поле ввода файла на веб-сайте.
[*]
[b]Загрузка изображения профиля (клиент на сервер):[/b]
Я отправляю выбранный файл изображения профиля со стороны клиента в серверный скрипт с помощью запроса [b]POST[/b].
[*]
Код на стороне клиента создает объект [b]FormData[/b] и добавляет к нему выбранный файл и соответствующие данные (например, имя пользователя).
[*]
[b]Серверный скрипт (PHP):[/b]
На сервере у меня есть PHP-скрипт ([b]storePFP.php[/b]), который обрабатывает входящие [b]POST< /strong> запрос.
[*]
Скрипт PHP обрабатывает полученные данные, включая имя пользователя и файл изображения профиля, используя $_FILES[/b] и [b]file_get_contents( 'php://input')[/b].
[*]
Скрипт сервера проверяет, существует ли пользователь в базе данных, и, если он найден, генерирует уникальное имя файла для изображения профиля, перемещает загруженный файл в назначенный каталог и записывает сведения об изображении в базу данных.< /п> [*][b]Отладка и ведение журнала:[/b]
Я реализовал операторы регистрации ошибок и отладки в своем PHP-скрипте для регистрации такой информации, как полученные данные JSON, заголовки, файлы и результаты запросов.
[*]
Я проверял потенциальные проблемы, такие как неверные данные запроса, неопределенные переменные или сбои запросов к базе данных.
[*]
[b]Проблемы и вопросы:[/b]
Я столкнулся с некоторыми проблемами, связанными с неопределенными переменными ([b]$uploadDirectory[/b], [b]$result[/b] ) и результаты запроса к базе данных не соответствуют ожиданиям.
[*]
Я изучил и предоставил отладочную информацию через журналы ошибок.
[*]
[b]Альтернативное хранилище:[/b]
Я подумываю, можно ли хранить изображения профиля в другом общедоступном API.
const handleProfilePictureUpload = async (e) => { е.preventDefault(); const fileInput = document.querySelector('#fileInput'); константный файл = fileInput.files[0]; // Проверяем, выбран ли файл если (!файл) { setMessage('Пожалуйста, выберите изображение профиля для загрузки.'); возвращаться; } // Проверяем, поддерживается ли тип файла (gif, png или jpg) constallowedFileTypes = ['image/gif', 'image/png', 'image/jpeg', 'image/jpg']; if (!allowedFileTypes.includes(file.type)) { setMessage('Неверный тип файла. Выберите изображение в формате GIF, PNG, JPG или JPEG.'); возвращаться; } // Устанавливаем URL конечной точки API const URL = 'http://localhost:80/storePFP.php'; пытаться { // Создаем объект FormData для отправки файла const formData = новые FormData(); formData.append('имя пользователя', user.username); formData.append('profilePicture', файл); console.log(formData.get('profilePicture')); // Вызов API для загрузки изображения профиля const ответ = ожидание выборки (url, { метод: 'POST', тело: данные формы, }); константные данные = ждут ответа.json(); console.log(данные); // Проверяем, успешен ли ответ если (ответ.ок) { // Устанавливаем сообщение на основе данных ответа setMessage(data.message); } еще { // Устанавливаем сообщение об ошибке из ответа setMessage(data.message || 'Произошла ошибка при загрузке изображения профиля.'); } } поймать (ошибка) { // Регистрируем и отображаем общее сообщение об ошибке, если во время вызова API возникает исключение console.error('Ошибка загрузки изображения профиля:', error); setMessage('Произошла ошибка при загрузке изображения профиля.'); } }; // HTML-код, возвращаемый Выберите изображение профиля: Загрузить {"success":false,"message":"Неверные данные запроса"
Да, я проверил правильность путей (destinationPath)
Из журнала «Неверные данные запроса я получаю, что в противном случае»
if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (isset($data['username']) && isset($_FILES['profilePicture'])) { ЕЩЕ:
произошло
console.log(formData) вернул:
1.
Файл
[*]
Последнее изменение: 1703941829454
[*]
lastModifiedDate: суббота, 30 декабря 2023 г., 14:10:29 GMT+0100 (Mitteleuropäische Normalzeit) {}
[*]
имя: "361273270047920240_1595864818.jpg"
[*]
размер: 7197
[*]
Введите: «изображение/jpeg»
[*]
webkitRelativePath: ""
[*]
[[Прототип]]: Файл
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия