Вы не должны использовать file_get_contents()
, это неправильная функция для этого - она делает что-то еще полностью (вы можете прочитать руководство, если вам интересно, что делает эта функция).Вместо использования запроса, который вводит значения напрямую, вы также должны использовать подготовленный оператор, как показано ниже.
Это предотвратит атаки с использованием SQL-инъекций и гарантирует, что никакие данные не прервут запрос.
<?php
include "conexion.php";
$titulo = $_POST['titulo'];
$contenido = $_POST['contenido'];
$fecha = $_POST['fecha'];
$imagen = $_FILES['imagen']['tmp_name'];
$query = "INSERT INTO articulos (titulo, contenido, fecha, imagen) VALUES (?, ?, ?, ?)";
if ($stmt = $conexion->prepare($query)) {
$stmt->bind_param("ssss", $titulo, $contenido, $fecha, $imagen);
if ($stmt->execute()) {
echo "Inserted");
} else {
// Do some logging
error_log($stmt->error);
echo "Not inserted";
}
} else {
// Do some logging
error_log($conexion->error);
echo "Not inserted";
}