Форум → Программирование → PHP для идиотов → построение файла и скачивание
построение файла и скачивание
Страницы: ← Следующая страница →
-
Май 21, 2010, 3:11 п.п., спустя 3 минуты 20 секунд
точнее чтоб ссылка указывала на файл, словно он уже есть…
А его нет?
Объясни человеческим языком, чего ты хочешь. -
Май 21, 2010, 3:16 п.п., спустя 4 минуты 59 секунд
кликаю на ссылку "get file"
и после этого должен сформироваться файл (должен произвестись выбор данных из БД)… и появилось окошко типо: хотите скачать файл или открыть его -
Май 21, 2010, 3:17 п.п., спустя 55 секунд
ты хочешь чтобы по ссылке /chegoytotam/myFile.txt отвечал скрипт /chegoytotam/makeTxt.php?
или что? -
Май 21, 2010, 3:20 п.п., спустя 3 минуты 16 секунд
я хочу чтоб: нажать на ссылку и мог скачать файл, словно он есть уже на сервере.
но на самом деле его нет там.
для этого мне надо его создать и потом скачать!
вот и вопрос: как это сделать одним кликом:? создать файл удаленно, затем скачать его на рабочий стол, и удалить с сервера? -
Май 21, 2010, 3:22 п.п., спустя 1 минуту 58 секунд
как это сделать одним кликом:? создать файл удаленно, затем скачать его на рабочий стол, и удалить с сервера?
на каком этапе у вас проблемы ?
не умеете файл создавать ?
не знаете как его отдавать с сервера ?
не знаете как удалить файл ?
с чем у вас трудности ? -
Май 21, 2010, 3:24 п.п., спустя 1 минуту 43 секунды
вот, не знаю как отдать с сервера.
могу создать, и удалить его… -
Май 21, 2010, 3:25 п.п., спустя 1 минуту 18 секунд
так в чем проблема? ссылка на "/getNewDownload.php".создаешь файл скриптом. и отправляешь в браузер.
header("Content-type: application/mp3");
header("Content-Length: ".$fSize);
header("Content-Disposition: attachment; filename=".$file_name);
header("Content-Transfer-Encoding: binary");
if(isset($_SERVER['HTTP_USER_AGENT']) and strpos($_SERVER['HTTP_USER_AGENT'],'MSIE'))
header('Content-Type: application/force-download');
else
header('Content-Type: application/octet-stream'); -
Май 21, 2010, 3:36 п.п., спустя 10 минут 30 секунд
вот файл!
[man]
<?php
require_once('configbd.php');
$get_price = '';
$query = "SELECT * FROM subbrand ORDER BY brand ASC";
$result = mysql_query($query);
$i = 1;
$num_result = mysql_num_rows($result);
while ($row = mysql_fetch_array($result))
{
if ($i < $num_result)
{
$get_price .= "shop,1,".$row['sub_code'].",".$row['price']."\r\n";
}
else
{
$get_price .= "cheap-online,1,".$row['sub_code'].",".$row['price'];
}
$i++;
}
$file_name = 'price.csv';
$file = fopen($file_name,"w");
fwrite($file,$get_price);
fclose($file);
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename="price.csv"');
//header('location:index.php');
?>
[/man]
а вот ошибка
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at T:\home\localhost\first_work\adminer\price.php:26) in <b>T:\home\localhost\first_work\adminer\price.php</b> on line <b>27</b><br />Спустя 69 сек.
require_once('tcenoc.php');
$get_price = '';
$query = "SELECT * FROM jos__coffeesubbrand ORDER BY brand ASC";
$result = mysql_query($query);
$i = 1;
$num_result = mysql_num_rows($result);
while ($row = mysql_fetch_array($result))
{
if ($i < $num_result)
{
$get_price .= "cheap-online,1,".$row['sub_code'].",".$row['price']."\r\n";
}
else
{
$get_price .= "cheap-online,1,".$row['sub_code'].",".$row['price'];
}
$i++;
}
$file_name = 'coffeeprice.csv';
$file = fopen($file_name,"w");
fwrite($file,$get_price);
fclose($file);
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename="coffeeprice.csv"');
//header('location:index.php'); -
Май 21, 2010, 3:40 п.п., спустя 4 минуты 14 секунд
Ну тогда показывайте где у вас в файле price.php строка 27 (и еще парочка снизу и сверху). -
-
Май 21, 2010, 3:46 п.п., спустя 4 минуты 56 секунд
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: application/octet-stream", false);
header('Content-Disposition: attachment; filename="' . $filename . '";');
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . $filesize);
exit(file_get_contents($filepath));https://smappi.org/ - платформа по созданию API на все случаи жизни -
Май 21, 2010, 3:51 п.п., спустя 5 минут 22 секунды
причем, файл который на серваке создается, то все хорошо, а вот тот что качаешь, то c warningom -
Май 21, 2010, 4:07 п.п., спустя 15 минут 41 секунду
все, сделал!
спасибо всем!
вот код:
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename="coffeeprice.csv"');
readfile('coffeeprice.csv');
есть ли какие-то отрицательные моменты у него? -
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!