Загрузка изображения с локального диска, а не веб-формы с использованием переполнения стека

Я пытаюсь загрузить изображение на свой mysql база данных. Я пытаюсь ниже безрезультатно.

<?php
global $mysqli;
$mysqli = new mysqli("127.0.0.1", "root", "mypass", "mydb");
if ($mysqli -> connect_errno)
{
echo "Failed to connect to MySQL: (" . $mysqli -> connect_errno . ") " . $mysqli -> connect_error;
}

$image = addslashes(file_get_contents('C:/wamp64/www/images/img1.jpg'));
$image_name = addslashes("imagename");
$query = "INSERT INTO info ('image', 'image_name') VALUES ('$image', '$image_name')";

if (!mysql_query($query))
{
echo "Something went wrong!";
}
?>

Я получаю ошибку ниже:

Устаревший: mysql_query (): расширение mysql устарело и будет
быть удаленным в будущем: используйте вместо этого mysqli или PDO в
C: \ wamp64 \ www \ index.php в строке 13

Предупреждение: mysql_query (): доступ запрещен для пользователя » @ ‘localhost’ (используя
пароль: N O) в C: \ wamp64 \ www \ index.php в строке 13

Предупреждение: mysql_query (): не удалось установить ссылку на сервер
в C: \ wamp 64 \ www \ index.php в строке 13 Что-то пошло не так!

Однако, если я удаляю код, начинающийся с $ image, я не получаю ошибок, что означает, что соединение с базой данных успешно. Кажется, что-то не так во второй части кода, и я боюсь, что ошибка может ввести в заблуждение.

0

Решение

  • Не используйте конкатенацию строк для запросов SQL.
  • Посмотрите на PDO
  • Вы подключаетесь с помощью MySQLi, но ваша команда запроса — MySQL. Ошибка предельно ясна.
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector