Marci Marci - 5 months ago 22
SQL Question

Upload image and save form data into a Mysql db using php

I am writing a code where I can upload an image in a folder and save data form into a Mysql db. At the moment just Saving data form in a db table is working but I can't upload the image in a folder. This is the code:

<?php

if(isset($_POST['upload_img'])){

$file_name = $_FILES['image']['name'];
$file_type = $_FILES['image']['type'];
$file_size = $_FILES['image']['size'];
$file_tmp_name = $_FILES['image']['tmp_name'];

if($file_name){
move_uploaded_file($file_tmp_name,"images/$file_name");

}
}
?>
<?php
include 'guestconfig/config.php';

if (isset($_POST['upload_img']) && $_POST['upload_img']=="invia")
{
$image = $file_name;
$title = addslashes($_POST['title']);
$price = addslashes($_POST['price']);



$sql = "INSERT INTO testone
(image,title,price) VALUES ('$image', '$title','$price')";
if($result = mysql_query($sql) or die (mysql_error()))
{
echo "Inserimento avvenuto con successo.<br>
Vai alla <a href=\"index.php\">Home Amministrazione</a>";
}
}else{
?>
<table border="1">
<tr>
<td>
<img src="xxx.jpg" alt="xxx" />
<img src="xxx.jpg" alt="xxx" />
</td>

</tr>
<tr>
<td>

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

<label>upload image </label><br>
<input type="file" name="image"><br>
<br><br>

title:
<input name="title" type="text"><br><br>

price:
<input name="price" type="text"><br><br>

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

</tr>
</table>
<?php
}
?>
<br>


I hope you can help me. Thanks! :)

EDIT: Ok, now I can upload my image but I can't save the image name (before I could). How can I do it, please? Thanks! :)

EDIT2: Ok, now it's perfect... Thanks to everybody! :)

Answer

Hey first replace ctype="multipart/form-data" with enctype="multipart/form-data"

   if(!empty($file_name)){
                  if(move_uploaded_file($file_tmp_name,"images/".$file_name))
echo "image uploaded";
else  echo "image not uploaded";


                }
Comments