irwells
asked on
delete an image from the database folder
Hi, I need help once again. This time with deleting images from the 'uploads' database folder.
I have no problems deleting the item from the database but cant find a way of deleting the related image from the folder (../../uploads).
I have looked through some of the solution posted on this site, but cant find a solution as each question in unique.
I have add to my code (attached) but get an error?
$path = '../../uploads/'; //path
$image= $_POST["image_name"] ;
//check that the path excsits
if(file_exists($path)){
echo "file exists";
//echo $path;
unlink($path,$image);
}else{
echo"file doesnt exist";
}
error message: Warning: unlink() expects parameter 2 to be resource, string given in C:\xampp\htdocs\WEBSITE\ww wroot\admi n\delete_i mage.php on line 64
The parth is ok, but I dont think im getting thew right image value to be deleted. I can delete the image manually by
$path = '../../uploads/pic1.jpg';
unlink($parth);
thanks
Ian Wells
I have no problems deleting the item from the database but cant find a way of deleting the related image from the folder (../../uploads).
I have looked through some of the solution posted on this site, but cant find a solution as each question in unique.
I have add to my code (attached) but get an error?
$path = '../../uploads/'; //path
$image= $_POST["image_name"] ;
//check that the path excsits
if(file_exists($path)){
echo "file exists";
//echo $path;
unlink($path,$image);
}else{
echo"file doesnt exist";
}
error message: Warning: unlink() expects parameter 2 to be resource, string given in C:\xampp\htdocs\WEBSITE\ww
The parth is ok, but I dont think im getting thew right image value to be deleted. I can delete the image manually by
$path = '../../uploads/pic1.jpg';
unlink($parth);
thanks
Ian Wells
<?php
session_start();
if(!isset($_SESSION['agent']) or ($_SESSION['agent'] != md5($_SERVER['HTTP_USER_AGENT']))){
require_once('../../secure/connect.php');
require_once('../php/login_functions.php');
$url = absolute_url();
header("Location:$url");
exit();
}
$page_title = 'Delete Product!';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>delete image</title>
</head>
<?php
require_once('../../secure/connect.php');
include ('../includes/header.html');
?>
<!--<link rel="stylesheet" href="css/styleSheet.css" type="text/css" />-->
<body>
<!-- Start of Container -->
<div id="container">
<!--Header -->
<div align="center" >
<?php # delete_image.php
// This page is for deleting a item record.
// This page is accessed through search_product.php
echo '<b><font color="#993300"><h1>Delete Image...</h1></b>';
// Check for a valid user ID, through GET or POST:
if ( (isset($_GET['id'])) && (is_numeric($_GET['id'])) ) { // From view_users.php
$id = $_GET['id'];
} elseif ( (isset($_POST['id'])) && (is_numeric($_POST['id'])) ) { // Form submission.
$id = $_POST['id'];
} else { // No valid ID, kill the script.
echo '<p class="error">This page has been accessed in error.</p>';
//include ('includes/footer.html');
exit();
}
// Check if the form has been submitted:
if (isset($_POST['submitted'])) {
if ($_POST['sure'] == 'Yes') { // Delete the record.
// Get the user's information:
$path = '../../uploads/';
$image= $_POST["image_name"] ;
if(file_exists($path)){
echo "file exists";
//echo $path;
unlink($path,$image);
}else{
echo"file doesnt exist";
}
// Make the query:
$q = "DELETE FROM images WHERE images.id=$id LIMIT 1";
$r = @mysqli_query ($mysqli, $q);
if (mysqli_affected_rows($mysqli) == 1) { // If it ran OK.
// Print a message:
echo '<p>The image has been deleted.</p>';
echo '<p><a href="search_product.php">Return to Admin</a></p>';
} else { // If the query did not run OK.
echo '<p class="error">The imjage could not be deleted due to a system error.</p>'; // Public message.
echo '<p>' . mysqli_error($mysqli) . '<br />Query: ' . $q . '</p>'; // Debugging message.
}
} else { // No confirmation of deletion.
echo '<p>The image has NOT been deleted.</p>';
echo '<p><a href="search_product.php">Return to Admin</a></p>';
}
} else { // Show the form.
// Retrieve the user's information:
$q = "SELECT * FROM images WHERE id=$id";
$r = @mysqli_query ($mysqli, $q);
if (mysqli_num_rows($r) >=0) { // Valid user ID, show the form.
// Get the user's information:
$row = mysqli_fetch_array ($r, MYSQLI_NUM);
// Create the form:
echo '<form action="delete_image.php" method="post">';
echo '<h3>Name: ' . $row[1] . '</h3>';
echo "<img src=\"../../uploads/".$row[2]."\" width=\"80px\" /></br>";
echo '<p>Are you sure you want to delete this user?<br />';
echo '<input type="radio" name="sure" value="Yes" /> Yes';
echo '<input type="radio" name="sure" value="No" checked="checked" /> No</p>';
echo '<p><input type="submit" name="submit" value="Submit" /></p>';
echo '<input type="hidden" name="submitted" value="TRUE" />';
echo '<input type="hidden" name="id" value="' . $id .'" />';
echo '<input type="hidden" name="image_name" value="' .$row[2].'" />';
echo '</form>';
} else { // Not a valid user ID.
echo '<p class="error">This page has been accessed in error.</p>';
}
} // End of the main submission conditional.
mysqli_close($mysqli);
?>
</div>
</div>
</body>
</html>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks marqusG for the quick reply.
I changed
$parth ='../../uploads/';
to
$parth ='../../uploads/'.$image;
and it works great.
Thank you.
I changed
$parth ='../../uploads/';
to
$parth ='../../uploads/'.$image;
and it works great.
Thank you.
Glad for helped you. Thanks for points.
Best regards