Hai bisogno di una funzione per inviare la tua richiesta, altrimenti hai semplicemente compilato una stringa:questa:
$insert = "INSERT INTO image(name,picture) VALUES ('$image_name','$image')";
dovrebbe essere seguito da questo:
mysqli_query($con, $insert);
Gli avvisi sono causati da più problemi con il codice. Per prima cosa stai controllando se il file è stato caricato nel modo sbagliato:questo
if(isset($_FILES['image'])){
$file = $_FILES['image']['tmp_name'];
}
Imposterà sempre un $file
variabile, anche se nessun file è stato selezionato nel form, portando quindi a non eseguire mai questa istruzione if:
if(!isset($file)){
echo "Please select an image";
}
e di eseguire invece sempre quello che c'è nel blocco else, che causa gli errori, perché le funzioni che hai citato, che sono contenute in questo blocco else, non sono in grado di operare su nessun file.
Pertanto, il semplice controllo del caricamento del file risolverà il problema:un modo per farlo sarebbe rimuovere prima questo, il che non è utile
if(isset($_FILES['image'])){
$file = $_FILES['image']['tmp_name'];
}
e poi cambia questo:
if(!isset($file)){
echo "Please select an image";
}
a questo:
if(!isset($_FILES['image']['tmp_name'])){
echo "Please select an image";
}