Ошибка преобразования массива в строку при вставке в базу данных

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

Я пробовал несколько способов отладки, но не работал.

Ошибка:

Notice: Array to string conversion in C:\xampp\htdocs\Employ\index.php on line 36

Код:

$country = mysqli_real_escape_string($conn, $_POST['country']);
$zip = mysqli_real_escape_string($conn, $_POST['zip']);
$identity =($_FILES['identity']);
$fileName = $_FILES['identity']['name'];
$fileTmpName = $_FILES['identity']['tmp_name'];
$fileSize = $_FILES['identity']['size'];
$fileError = $_FILES['identity']['error'];
$fileType = $_FILES['identity']['type'];
$fileExt = explode('.', $fileName);
$fileActualExt = strtolower(end($fileExt));
$allow = array('jpg', 'jpeg', 'png',);
if (in_array($fileActualExt, $allow)) {
    if ($fileError === 0) {
        if ($fileSize < 1000000) {
            $fileNameNew = uniqid('', true) . "." . $fileActualExt;
            $fileDestination = 'uploads/' . $fileNameNew;
            move_uploaded_file($fileTmpName, $fileDestination);

            $sql = "INSERT INTO applicants (name, email, gender, dob, mobile, accounts, occupation, ssn, m_status, address1, address2, city, country, zip, identity) VALUES ('$name', '$email', '$gender', '$dob', '$mobile', '$accounts', '$occupation', '$ssn', '$m_status', '$address1', '$address2', '$city', '$country', '$zip', '$identity')";
            $insert = mysqli_query($conn, $sql);
        }
    }
}
array('jpg', 'jpeg', 'png',) недействителен.
Obsidian Age 29.07.2019 01:28

Что здесь может быть правильным

Victoria Percy 29.07.2019 01:30

Подумайте, что может быть не так с кодом, который я только что опубликовал. Для отладки нужно всего 26 символов :) Эта строка напрямую связана со следующей за ней строкой. Что логика пытается сделать там? Как только вы это поймете, вы увидите ошибку.

Obsidian Age 29.07.2019 01:33

Я исправил его на array('jpg', 'jpeg', 'png'); но все равно выдает ту же ошибку

Victoria Percy 29.07.2019 01:36

завершающая запятая совершенно допустима. какая строка 36? Вы проверили, что массив файлов заполнен?

user10051234 29.07.2019 01:45

@Dharman, я знаю об этом и делаю это впервые. Я еще учусь.

Victoria Percy 29.07.2019 07:23
Стоит ли изучать 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 и хотите разрабатывать...
2
6
72
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Ошибка связана с использованием массива $identity в виде строки.

$identity =($_FILES['identity']);



$sql = "INSERT INTO applicants (name, email, gender, dob, mobile, accounts, occupation, ssn, m_status, address1, address2, city, country, zip, identity) VALUES ('$name', '$email', '$gender', '$dob', '$mobile', '$accounts', '$occupation', '$ssn', '$m_status', '$address1', '$address2', '$city', '$country', '$zip', '$identity')";

Также вы можете рассмотреть возможность использования PDO для взаимодействия с базами данных.

Я не знаю, как использовать PDO. Я знаком с миром программирования.

Victoria Percy 29.07.2019 08:16

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