Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment mettre à jour un fichier PDF qui a déjà été ajouté à la base de données en PHP ?

$_POST['contractupload'] ne fonctionnera pas. Le nom du fichier est uniquement dans $_FILES . Vous devez le traiter de la même manière que vous le faites dans insert.php .

J'ai également montré comment réécrire votre code en utilisant une instruction préparée au lieu d'une substitution de variable.

Et vous devriez utiliser move_uploaded_file() au lieu de copy() . Voir Différence entre copier et déplacer_uploaded_file .

<?php

// Include config file
require_once "new_db_connect.php";

if($_POST) {
    $fname = $_POST['fname'];
    $lname = $_POST['lname'];
    $embg = $_POST['embg'];
    $contract_file = basename($_FILES['contractupload']['name']);
    $contract_path = "files/contracts/$contract_file";

    move_uploaded_file($_FILES['contractupload']['tmp_name'], $contract_path);

    $id = $_POST['id'];

    // UPDATE the info
    $stmt = $connect->prepare("UPDATE addemployees SET fname = ?, lname = ?, embg = ?, contractupload = ? WHERE id = ?");
    $stmt->bind_param("ssssi", $fname, $lname, $embg, $contract_file, $id);
    if($stmt->execute()) {
        header("location: employees.php");
    } else {
        echo "Erorr while updating record : ". $stmt->error;
    }

    $connect->close();

}

?>