Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何覆盖/更新所选文件/PHP_Php - Fatal编程技术网

如何覆盖/更新所选文件/PHP

如何覆盖/更新所选文件/PHP,php,Php,我想询问如何覆盖/更新所选文件。我有一个表,其中有一个名为File1的文件。我想编辑所选的行并将File1更改为File2,而不将File2添加到文件夹的目录中,我想从目录文件夹中删除File1并替换为File2 这是我的MySQL和moveuploadfile代码 <?php if(isset($_POST['submit'])) { include 'connection.php'; $storedFile="../files/RepositoryFiles

我想询问如何覆盖/更新所选文件。我有一个表,其中有一个名为File1的文件。我想编辑所选的行并将File1更改为File2,而不将File2添加到文件夹的目录中,我想从目录文件夹中删除File1并替换为File2

这是我的MySQL和moveuploadfile代码

<?php
if(isset($_POST['submit'])) {
    include 'connection.php';

    $storedFile="../files/RepositoryFiles/".basename($_FILES["file"]["name"]);
    $research_photo="../files/Images/".basename($_FILES["research_photo"]["name"]);

    if(file_exists($storedFile) or file_exists($research_photo)){
        echo "<script type='text/javascript'>alert('Research File is already Existing!'); location.href='../admin/AddResearch.php?adding=failed';</script>";
    }
    else if($_FILES["file"]["size"] && $_FILES["research_photo"]["size"] > 10000000){
        echo "<script type='text/javascript'>alert('Research File should be less than 10MB!'); location.href='../admin/AddResearch.php?adding=failed';</script>";
    }
    else {
    $researchId = $_POST['idResearch'];
    $research_title = mysqli_real_escape_string($conn,$_POST['research_title']);
    $research_type = mysqli_real_escape_string($conn,$_POST['research_type']);
    $research_timeline = mysqli_real_escape_string($conn,$_POST['research_timeline']);
    // $storedFile="../files/RepositoryFiles/".basename($_FILES["file"]["name"]);
            move_uploaded_file($_FILES["file"]["tmp_name"], $storedFile);
    $research_description = mysqli_real_escape_string($conn,$_POST['research_description']);
    $research_author = mysqli_real_escape_string($conn,$_POST['research_author']);
    // $research_photo="../files/Images/".basename($_FILES["research_photo"]["name"]);
            move_uploaded_file($_FILES["research_photo"]["tmp_name"], $research_photo);
            $sql = "UPDATE tbl_repository SET research_title = ?, research_type = ?, research_timeline  = ?,
            research_file = ?, research_description = ?, research_author = ?, research_photo = ? WHERE ID = ? ";    
    $stmt = mysqli_stmt_init($conn);
    if(!mysqli_stmt_prepare($stmt,$sql)){
        echo "SQL Error" . mysqli_error($stmt);
    }
    else {
        mysqli_stmt_bind_param($stmt,"sssssssi", $research_title, $research_type, $research_timeline, $storedFile, $research_description, $research_author,$research_photo,$researchId); 
        mysqli_stmt_execute($stmt);
        echo "<script type='text/javascript'>alert('Successfuly Updated!'); location.href='../admin/ViewResearch.php?updating=success';</script>";
    }
}
}

?>

您可以通过
unlink()
方法简单地删除文件

只是,给它一条正确的道路很重要

例如
取消链接(“/var/www/test/file.png”)


当我检查您的代码时,没有使用
unlink()
方法,或者您可能有其他问题。

您可以通过
unlink()
方法简单地删除文件

只是,给它一条正确的道路很重要

例如
取消链接(“/var/www/test/file.png”)


当我检查您的代码时,没有使用
unlink()
方法,或者您有另一个问题。

我有点不知所措。是否要替换图像?旁注:在做准备好的语句时,不需要手动转义。您可以删除所有的
mysqli\u real\u escape\u string
调用。您的问题不清楚,如果您对unlink()有问题,可能是给定的地址不正确correct@El_Vanja是的,我需要更换图像和文件。我的更新正在运行,它正在mysql上更新,但问题不是覆盖文件,而是添加了另一个文件。所以基本上,如果我当前的文件是File1,如果我将该文件更新为file2,它将替换它,但在文件夹中File1仍然存在,我需要在用file2更新文件后立即删除File1。这些文件使用相同的名称而不是不同的名称对你有意义吗?@El_Vanja我已经更新了帖子,对不起,我把你弄糊涂了。我有点迷路了。是否要替换图像?旁注:在做准备好的语句时,不需要手动转义。您可以删除所有的
mysqli\u real\u escape\u string
调用。您的问题不清楚,如果您对unlink()有问题,可能是给定的地址不正确correct@El_Vanja是的,我需要更换图像和文件。我的更新正在运行,它正在mysql上更新,但问题不是覆盖文件,而是添加了另一个文件。所以基本上,如果我当前的文件是File1,如果我将该文件更新为file2,它将替换它,但在文件夹中File1仍然存在,我需要在用file2更新文件后立即删除File1。文件使用相同的名称而不是不同的名称对你有意义吗?@El_Vanja我已经更新了帖子,如果我把你弄糊涂了,对不起。