Неопределенное изображение индекса в PHP, я знаю, что это дублирование, но я пробовал много решений, но ни одно не сработало

Я хочу создать приложение на Android, в котором пользователь загружает фото, и эти загрузки будут вставлены в мою базу данных MySQL с помощью PHP.

но мой скрипт PHP генерирует ошибку, которая

Undefined index image in PHP

Ниже приведены мои файлы PHP -

"Constants.php"

<?php
$db_name = "mydb";
$local_username = "root";
$local_password = "";
$server_name = "localhost";
$conn= 
mysqli_connect($server_name,$local_username,$local_password,$db_name);
if ($conn)
{
echo "Connection successful";
}
else  
{
echo "Connectionj failed";
}

?>

"imageUploadScript.php"

<?php
require "Constants.php"; 
 if ($_SERVER['REQUEST_METHOD'] == 'POST')
 {
  $DefaultId = 0;
  $image = $_POST['image'];
 $mobile = $_POST['mobile'];
// if (isset($_POST['image']))
//{ 
 $ImagePath = "imageUploads/$mobile.jpg";
 $ServerURL = "yourPath/$ImagePath";
 $InsertSQL = "INSERT INTO info (img) values('$ServerURL') where 
mobile=$mobile";
 if (mysqli_query($conn, $InsertSQL)){
 file_put_contents($ImagePath,base64_decode($ImageData));
 echo "Your Image Has Been Uploaded.";
mysqli_close($conn);
 }
 else{
 echo "Please Try Again";
 }
//}
}
?>

любая помощь с вашей стороны будет оценена

Если вы загружаете образ, вам необходимо использовать $_FILES['image'] вместо $_POST['image'].

M A 06.12.2018 05:44

загрузка изображений связана с глобальной переменной $_FILES, а не с $_POST. так что измените это и проверьте

Anant Kumar Singh 06.12.2018 05:47

используйте file_put_contents($ImagePath,base64_decode($Image)) вместо file_put_contents($ImagePath,base64_decode($ImageData))

Bunny 06.12.2018 05:51

спасибо @M A и @ Alive to Die, ошибка исчезла, но элементы управления перешли в другую часть, и сгенерировано сообщение «Подключение выполнено успешно. Повторите попытку»

dubking India 06.12.2018 05:53

спасибо @Bunny, но все же контроль находится в другой части

dubking India 06.12.2018 05:54

Затем проверьте наличие ошибок SQL. Запрос INSERT WHERE выглядит странно.

mario 06.12.2018 05:55

затем проверьте свой запрос на вставку, и вам также необходимо изменить переменную: $imagedata на $image

Bunny 06.12.2018 05:56

VTC слишком широк. Слишком много ошибок для одного вопроса. Найдите лучшее руководство, уделите больше времени правильному отступу и форматированию, используйте эти переменные со смешанным регистром и имена путей реже, прочтите PDO и привязку параметров и используйте IDE с отладчиком для анализа таких проблем.

mario 06.12.2018 06:02

спасибо @mario, теперь я исправил код, и он отлично работает

dubking India 06.12.2018 07:41
Стоит ли изучать 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
9
82
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Для загрузки изображения вам необходимо использовать

$_FILES['image']

вместо

$_POST['image']

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