Я использую Угловая сделать запрос POST на мыши, используя следующий код в мой контроллер ...угловой POST не работает, как ожидалось (PHP)
var request = $http({
method: "post",
url: "../submit.php",
data: {
templateData: $scope.template
},
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
});
Я отправить данные в файл PHP называется submit.php
и все работает нормально, submit.php
получает данные. Следующее, что я делаю с данными, это записать в файл ...
$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$contentFile = fopen("file.txt", "w");
fwrite($contentFile, $template);
fclose($contentFile);
Это похоже на работу, я не получаю ошибок. Но теперь, следующая вещь, которую я хочу, это загрузить файл в браузер. Этот код должен работать, но он не загружается в браузер по какой-то причине ...
header('Pragma: anytextexeptno-cache', true);
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private", false);
header("Content-Type: text/plain");
header("Content-Disposition: attachment; filename=\"file.txt\"");
ПОЛНЫЙ КОД
<?php
$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$template = "";
foreach ($request as $data) {
foreach ($data as $sub) {
for ($i = 0; $i < count($sub); $i++) {
$template .= $sub[$i];
}
}
}
$contentFile = fopen("file.txt", "w");
fwrite($contentFile, $template);
fclose($contentFile);
header('Pragma: anytextexeptno-cache', true);
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private", false);
header("Content-Type: text/plain");
header("Content-Disposition: attachment; filename=\"file.txt\"");
?>
Просто уточните: вы хотите, чтобы человек просматривал ваш сайт, чтобы загрузить файл? На самом деле не существует способа заставить пользователей загружать что-то, потому что это будет большой уязвимостью безопасности. – RobertAKARobin
@RobertAKARobin что-то вроде этого, вы нажимаете кнопку загрузки, и я хочу, чтобы строка взяла строку в файл, который затем загружает ее на компьютер пользователя. – Bolboa
Что происходит сейчас? Является ли файл (он доступен) в браузере? – Jeff