Как вытащить бинарное поле и отдать его как zip-файл

Maibax

Новичок
Как вытащить бинарное поле и отдать его как zip-файл

Есть поле типа binary, надо вернуть его содержимое в виде zip-файла с определенным именем.
Делаю так:
PHP:
	$link = odbc_connect('my_base', 'user', '1234');
	if (!$link) {
		die('Could not connect: ' . odbc_error());
	}
	$sql = "select zip from tt where id = 5";
	$query = odbc_exec($link, $sql);
	if (!$query) {
		die( 'Could not run query: ' . odbc_error());
	}
	odbc_binmode ($query, ODBC_BINMODE_PASSTHRU);
	header("Content-Type: application/zip");
	header("Content-Length: ".odbc_field_len($query, 1));
	echo odbc_result($query, 1);
	odbc_free_result($query);
	odbc_close ($link);
Вопрос. Как задать имя файла, которое предложится юзеру для сохранения? А то оно предлагает что-то очень случайное
 

Maibax

Новичок
К сож ни Content-Disposition ни Content-Location никак на это не влияют
 

Alexandre

PHPПенсионер
К сож ни Content-Disposition ни Content-Location никак на это не влияют
потому что трудно найти черную кошку в черной комнате, особенно если ее там нет:
Content-Type: application/zip или application/octet-stream ;)
 

Maibax

Новичок
Автор оригинала: Alexandre
ну, меня совсем за ламера держат что-ли????

открой для себя функцию header()
И незачем так орать (с) ;)

Хотя, чесно говоря, не понял ниф о
Content-Type: application/zip или application/octet-stream
если можно, подержите меня за ламера и разверните плиз.

ЗЫ: Рабочий код:

PHP:
header('Content-Disposition: attachment; filename="myfile.zip"');
 

Alexandre

PHPПенсионер
PHP:
<?php
// We'll be outputting a PDF
header('Content-type: application/pdf');

// It will be called downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// The PDF source is in original.pdf
readfile('original.pdf');
?>
 
Сверху