Как загрузить файл динамически, т.е. файл с расширением .pec был загружен на сервер, теперь я должен скачать тот же файл

Как загрузить файл динамически, т. Е. Файл с расширением .pec был загружен на сервер, теперь я должен загрузить тот же файл без указания имени этого файла с расширением .pec.

В строке 4 я дал имя файла wasifresume.pdf, который я загрузил на сервер и получил шифрование с расширением wasifresume.pec, и теперь мне нужно динамически загрузить этот файл, строка 4

 $file = "wasifresume.pec";

без указания имени файла wasifresume

Есть ли какой-нибудь код для этого, например * .pec или что-то для загрузки того же файла, потому что я хочу сделать это динамически.

<<?php
session_start();

ob_start();

$file = "wasifresume.pec";

echo $_SESSION["file_name"]."the name";

ob_start();
// put some business here


if(file_exists($file))
{
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();

readfile($file);
exit;
}
else
echo "file not found";
?>

см. upload.php

<?php
session_start();

$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
//$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$uploadOk = 1;
}
// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 50000000) {
echo "Sorry, your file is too large.";
$uploadOk = 0;
}
if ($uploadOk == 0) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
echo $_FILES["fileToUpload"]["tmp_name"];
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],   $target_file)) {
echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has   been uploaded.";
//   echo  $_FILES["fileToUpload"]["name"];

$_SESSION["file_name"]=$_FILES["fileToUpload"]["name"];

// echo $ _SESSION [«file_name»];

 exec('/var/www/html/CryptCmdline http://*.*.*.*/uploads/'. $_FILES["fileToUpload"]["name"],$output);

// $output=shell_exec("dr.bs");
// print_r($output);

include('/var/www/html/down.php');
} else {
echo "Sorry, there was an error uploading your file.";
}
}
?>

0

Решение

В вашем файле .htacces

AddType application/octet-stream .pec

Это сделает это автоматически загруженным

или же:

<FilesMatch ".pec">
ForceType application/octet-stream
Header set Content-Disposition attachment
Header set Content-Description "File Transfer"Header set Content-Transfer-Encoding "binary"</FilesMatch>
0

Другие решения

Установка одного типа содержимого в вашем PHP-коде недостаточно. Вам нужно добавить PEC в MIME-тип вашего веб-сервера, чтобы понять, какой тип файла он передает.

0

По вопросам рекламы [email protected]