Reputation: 719
I have the html code like : -
<form id="form" name="form" action="banner_ad_post.php" method="post" enctype="multipart/form-data">
<p>
<label for="banner_name"><font color="#FF0000"> * </font>Banner Name: </label>
<input type="text" name="banner_name" id="banner_name" value="" maxlength="100" required="required"/>
</p>
<p>
<label for="Banner_website_url"><font color="#FF0000"> * </font>Banner website Url: </label>
<input type="url" name="banner_site_url" id="banner_site_url" value="" maxlength="100" required="required"/>
</p>
<p>
<label for="banner_image_url">Banner Image Url: </label>
<input type="file" name="file" id="file" value="" accept="image" placeholder="Browse from hard disk" onchange="img_path()"/>
<font color="#FF0000"> OR</font>
<input type="url" name="banner_image_url" id="banner_image_url" value="" maxlength="100" placeholder="Enter the url from website." onchange="validate()"/>
</p>
<p>
<label for="submit"> </label>
<input type="submit" id="submit" name="submit" value="Submit" onclick="preview()" />
</p>
</form>
and the php script like : -
<?php
if(isset($_POST['banner_name']) && isset($_POST['banner_site_url']) && isset($_POST['banner_image_url']) && isset($_FILES['file']['name']))
{
$banner_name=$_POST['banner_name'];
$banner_name=strip_tags($banner_name);
$banner_site_url=$_POST['banner_site_url'];
$banner_site_url=strip_tags($banner_site_url);
$banner_image_url=$_POST['banner_image_url'];
$banner_image_url=strip_tags($banner_image_url);
$name=$_FILES['file']['name'];
$size=$_FILES['file']['size'];
$type=$_FILES['file']['type'];
$tmp_name=$_FILES['file']['tmp_name'];
$error=$_FILES['file']['error'];
$maxsize = 512000;
$location='uploads/';
if(!empty($banner_image_url))
{
$file_location=$banner_image_url;
?>
<div id="img">
<img src="<?php echo $file_location?>" align="left" width="200px" height="200px">
</div>
<?php
} elseif (!empty($name))
{
$file_location=$location.$name;
?>
<div id="img">
<img src="http://localhost/leadstool/<?php echo $file_location?>" align="left" width="200px" height="200px">
</div>
<?php
}
if(!empty($banner_name) && !empty($banner_site_url))
{
$query="INSERT INTO `banner_ad` VALUES('','$id','$banner_name','$file_location','$banner_site_url','0',now())";
if($query_run=mysql_query($query))
{
if($size <= $maxsize)
{
if(move_uploaded_file($tmp_name,$location.$name))
{
echo'<font color="green">File uploaded & has been sent for approval.</font>';
}
else
{
echo'<font color="red">File can not be uploaded.</font>';
}
} else {
echo'<font color="green">Your information has been uploaded and has been sent for approval.</font>';
}
}
else
{
echo'<font color="red"> The request can not be performed.</font>';
}
}
else
{
echo'<font color="red">These fields are mandatory.</font>';
}
}
?>
Here, the problem is due to some reason move_uploaded_file() method is unable to upload the file in the database. But it still gives the output like " File uploaded & has been sent for approval ". Now, I don't understand what exactly am i missing here?
Any help will be appreciated ... Thank you in advance!
Upvotes: 0
Views: 285
Reputation: 2886
You can do that as well. It works very well :
images to database via form:
form page :
<form enctype="multipart/form-data" action="insert_image.php" method="post" name="changer">
<input name="image" accept="image/jpeg" type="file">
<input value="Submit" type="submit">
</form>
insert to database page :
<?php
include 'conf.php';
if ($_FILES["image"]["error"] > 0)
{
echo "<font size = '5'><font color=\"#e31919\">Error: NO CHOSEN FILE <br />";
echo"<p><font size = '5'><font color=\"#e31919\">INSERT TO DATABASE FAILED";
}
else
{
move_uploaded_file($_FILES["image"]["tmp_name"],"images/" . $_FILES["image"]["name"]);
echo"<font size = '5'><font color=\"#0CF44A\">SAVED<br>";
$file="images/".$_FILES["image"]["name"];
$sql="INSERT INTO database_table (table_column_1, table_column_2) VALUES ('','$file')";
if (!mysql_query($sql))
{
die('Error: ' . mysql_error());
}
echo "<font size = '5'><font color=\"#0CF44A\">SAVED TO DATABASE";
}
mysql_close();
?>
Upvotes: 0
Reputation: 719
Sorry! there is no programming error in this question. Just a simple logical error.
I am re posting the code... that i have edited to rectify the problem.
if($size <= $maxsize)
{
if(move_uploaded_file($tmp_name,$location.$name))
{
echo'<font color="green">File uploaded & has been sent for approval.</font>';
}
else
{
echo'<font color="red">File can not be uploaded.</font>';
?>
<div id="img">
<img src="http://localhost/leadstool/<?php echo $file_location?>" align="left" width="200px" height="200px">
</div>
<?php
}
} else {
echo'<font color="red">File size must be less than 500KB.</font>';
}
Upvotes: 1