Form per caricamento dati e file immagine

di il
1 risposte

Form per caricamento dati e file immagine

Buongiorno, sto creando un form per caricare dei dati su un db, più un file immagine, il cui nome viene salvato sul database e l'immagine caricata su una cartella del server. Il problema è che o mi carica l'immagine o i dati testuali. Non riesco a fare entrambe le cose insieme. Visto che non sono molto pratico di php, se qualcuno di voi fosse così gentile da darmi una mano. grazie
Posto il codice, ho creato una cartella upload.
<?php


  $msg = ""; 
  
  // If upload button is clicked ... 
if($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['submit'])){
  
    $filename = $_FILES["submit"]["name"]; 
    $tempname = $_FILES["submit"]["tmp_name"];
    $altezza = $_POST['altezza'];
	
        $folder = "upload/".$filename; 
          
    $db = mysqli_connect("localhost", "root", "mysql", "verde"); 
  
        // Get all the submitted data from the form 
        $sql = "INSERT INTO piante (file, altezza) VALUES ('$filename','$altezza')"; 
		
        // Execute query 
        mysqli_query($db, $sql);

          
        // Now let's move the uploaded image into the folder: image 
        if (move_uploaded_file($tempname, $folder))  { 
            $msg = "Image uploaded successfully"; 
        }else{ 
            $msg = "Failed to upload image"; 
      } 
  
  $result = mysqli_query($db, "SELECT * FROM piante"); 
 
}

?>

<form method="post" action="form.php" enctype="multipart/form-data" >

altezza: <input type="text" name="altezza"/> 
<br><br>
file:    <input type="file" name="uploadfile"/> 

 <input type="submit" name="submit" value="invia">
    
  </form> 
</div>

1 Risposte

  • Re: Form per caricamento dati e file immagine

    Grazie, ho risolto modificando:
     $filename = $_FILES["uploadfile"]["name"]; 
        $tempname = $_FILES["uploadfile"]["tmp_name"];
        $altezza = $_POST['altezza'];
    Adesso carica tutto sul db, compresa l'immagine nella cartella!

    grazie ugualmente e buona domenica
Devi accedere o registrarti per scrivere nel forum
1 risposte