Как обновить данные в MySQL и одновременно с этим записать картинку?
Есть база с полями id, full_name, email, images
Есть переменные:
$id - в переменной неизменное id пользователя.
$full_name - новое имя пользователя, которое надо поменять в базе.
$email - новый ящик, который надо поменять в базе.
$images - проверенная картинка по нескольким входным параметрам, которую надо записать в строку, с вышеупомянутыми данными (маленькая картинка - собственный аватар пользователя в профиле).
Помогите с составлением запроса, чтобы обновить данные и одновременно с этим записать картинку в базу.
У меня нет опыта записи картинок в базу, поэтому я считать никак не могу, поэтому и прошу помочь.
А картинку показывать думаю запросом:
$query = "SELECT 'images' FROM 'users' WHERE 'id' = ".$id.";
Это плохая идея. Файлы должны загружаться в папку, а в базе только путь и имя картинки. (у себя я сохраняю только имя, путь задаю в шаблоне)
У меня так:
// Все проверки картинки выше...
//Генерация случайного имени картинки:
$_FILES['image']['name'] = md5(time() . uniqid($more_entropy=true)) . "." . $image_extension;
$sql = 'INSERT INTO items SET
name = :name,
description = :description,
price = :price,
date = NOW(),
category_id = :category_id,
address = :address,
image = :image,
user_id = :user_id';
$s = $pdo->prepare($sql);
$s->bindValue(':name', $_POST['name']);
$s->bindValue(':description', $_POST['description']);
$s->bindValue(':price', $_POST['price']);
$s->bindValue(':address', $_POST['address']);
$s->bindValue(':category_id', $_POST['category_id']);
$s->bindValue(':image', $_FILES['image']['name']);
$s->bindValue(':user_id', $_SESSION['id']);
$s->execute();
$file_name = $_FILES['image']['name'];
// Уменьшаем картинку. Берем из tmp_name и туда же возвращаем уменьшенную.
imageResize($_FILES['image']['tmp_name'], 700);
$file_tmp = $_FILES['image']['tmp_name'];
move_uploaded_file($file_tmp,"../images/".$file_name);
header("Location:/");