sql >> Base de Datos >  >> RDS >> Mysql

No puedo cargar y almacenar la imagen en la base de datos usando php

Necesita una función para enviar su consulta; de lo contrario, simplemente completó una cadena:esto:

$insert = "INSERT INTO image(name,picture) VALUES ('$image_name','$image')";

debe ser seguido por esto:

mysqli_query($con, $insert);

Las advertencias son causadas por múltiples problemas con su código. Primero está comprobando si el archivo se ha subido de forma incorrecta:esto

if(isset($_FILES['image'])){
    $file = $_FILES['image']['tmp_name'];
}

Siempre establecerá un $file variable, aunque no se haya seleccionado ningún archivo en el formulario, por lo que nunca se debe ejecutar esta instrucción if:

if(!isset($file)){
    echo "Please select an image";
}

y para ejecutar siempre lo que está en el bloque else en su lugar, lo que causa los errores, porque las funciones que mencionó, que están contenidas en este bloque else, no pueden operar en ningún archivo.

Por lo tanto, simplemente verificar que el archivo se haya cargado correctamente resolverá el problema:una forma de hacerlo sería eliminarlo primero, lo cual no es útil

if(isset($_FILES['image'])){
    $file = $_FILES['image']['tmp_name'];
}

y luego cambia esto:

if(!isset($file)){
    echo "Please select an image";
}

a esto:

if(!isset($_FILES['image']['tmp_name'])){
    echo "Please select an image";
}