Solution 1 :

Two things, One the path is not dynamic, which I did, secondly make sure value="<?php echo $a;?>" has value “fesectionatimetable”..

<?php

        if(isset($_POST["submit"])) 
        {

            $a= $_POST['a'] ;
            if ($a == 'fesectionatimetable'){
                $target_dir = "content/"; //your path
                $old_files = glob('content/*');
                foreach($old_files as $file){ // iterate files
                  if(is_file($file))
                    unlink($file); // delete file
                }
            }
           $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
           $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
             if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
                 echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been 
                 uploaded.";
                 }
        } 
    ?>

    <html>
    <body>
    <form action="index.php" method="post" enctype="multipart/form-data">
    <h2 style = "color : black ; "> Select image to upload: </h2>
    <h6 style = "color : black ; "> <input type="file" name="fileToUpload" id="fileToUpload"> 
    </h6>
    <h6 style = "color : black ; "> <input class="btn btn-primary" href="#" role="button" 
     type="submit" value="Upload Image" name="submit"> </h6>
    <input type="text" name='a' value="fesectionatimetable" style="display:none"> //your value 
    </form>

    </body>  
    <html>

Problem :

It’s my first experience on PHP web development and I am facing an issue. I made a HTML form to upload image that works fine. However, I am trying to add a feature in it so that when the new image is uploaded the previous image at the same link is deleted.

    <?php
        if(isset($_POST["submit"])) {
            $a= $_POST['a'] ;
            if ($a == 'fesectionatimetable'){
                $target_dir = "content/timeTables/FE/";
                unlink ('content/timeTables/FE/A') ;
            }
           $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
           echo '$_FILES["fileToUpload"]["name"]' ;
           $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
             if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
                 echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been 
                 uploaded.";
                 }
                } 
    ?>

        <html>
        <body>
        <form action="index.php" method="post" enctype="multipart/form-data">
        <h2 style = "color : black ; "> Select image to upload: </h2>
        <h6 style = "color : black ; "> <input type="file" name="fileToUpload" id="fileToUpload"> 
        </h6>
        <h6 style = "color : black ; "> <input class="btn btn-primary" href="#" role="button" 
         type="submit" value="Upload Image" name="submit"> </h6>
        <input type="text" name='a' value="<?php echo $a;?>" style="display:none">
        </form>

        </body>  
        <html>

I tried using unlink() function and it did not remove that image, showing a warning that unlink(content/timeTables/FE/A): No such file or directory while there is an image at the same link and of the same name.Please guide how to do this.

Comments

Comment posted by bam

you hardcoded to unlink

By