Ciao, ho un file php che comunica con il mio database creato tramite phpmyadmin. Il database ha una tabella che ho chiamato "libri_DB". Tramite una form io invio i dati al database. Tra questi dati ho anche una immagine. L'immagine mi viene caricata correttamente all'interno della cartella di upload, ma ha l'icona del lucchetto. Penso sia una questione di permessi. La mia cartella di upload ha come permesso 777.
Come posso risolvere?
Il codice è il seguente:
<?php
if(isset($_POST['mySubmit'])) {
$db = mysqli_connect('localhost','root','','DBsito');
if (!$db)
{
die('Could not connect to database: ' . mysqli_error());
}
$db_select = mysqli_select_db($db, 'DBsito');
//Salva il nome del file
$imagename = $_FILES['immagine']['name'];
//tipo del file
$imagetype = $_FILES['immagine']['type'];
$imagetemp = $_FILES['immagine']['tmp_name'];
//Path dell'upload
$imagePath = "img/libri/";
if(is_uploaded_file($imagetemp)) {
if(move_uploaded_file($imagetemp, $imagePath . $imagename)) {
echo "Sussecfully uploaded your image.";
}
else {
echo "Failed to move your image.";
}
}
else {
echo "Failed to upload your image.";
}
$categoria = mysqli_real_escape_string($db, $_POST['categoria']);
$username = mysqli_real_escape_string($db, $_POST['utente']);
$stanza = mysqli_real_escape_string($db, $_POST['stanza']);
$isbn = mysqli_real_escape_string($db, $_POST['isbn']);
$note = mysqli_real_escape_string($db, $_POST['note']);
$prezzo = mysqli_real_escape_string($db, $_POST['prezzo']);
$quantita = mysqli_real_escape_string($db, $_POST['quantita']);
$titolo = mysqli_real_escape_string($db, $_POST['titolo']);
$autore = mysqli_real_escape_string($db, $_POST['autore']);
$anno = mysqli_real_escape_string($db, $_POST['anno_pubblicazione']);
$editore = mysqli_real_escape_string($db, $_POST['editore']);
$pagine = mysqli_real_escape_string($db, $_POST['pagine']);
$test = mysqli_query($db, "SELECT libri_DB.isbn FROM libri_DB WHERE BINARY libri_DB.isbn = BINARY '$isbn' ");
if(!empty($isbn) && mysqli_num_rows($test)) {
$name_error = "";
}
else if (!empty($isbn)){
$query="INSERT INTO libri_DB (isbn, nome, autore, data_pubblicazione, editore, pagine, immagine_libro)
values ('$isbn', '$titolo', '$autore', '$anno', '$editore', '$pagine', '$imagename' )";
if(!mysqli_query($db, $query)){
die("DAMMIT");
}
else{
{ header("Location: thanks.php"); }
}
mysqli_query($db, $query);
}
else {
$name_error = "";
}
mysqli_close($db);
}
?>
Più precisamente, l'immagine che carico tramite la form viene spostata correttamente nella cartella /img/libri, ma come ripeto ha il simbolo del lucchetto. Quindi quando vado a fare la INSERT INTO libri_DB passandogli come ultimo argomento $imagename, il tutto mi restituisce DAMMIT. Come posso fare?