|
|
|
| Всем привет! Проблема в следующем: пользователь пытается скачать какой-то файл. После того как он нажимает на волшебную кнопочку "загрузить" открывается скрипт. На 6ой версии ослика загрузка начинается(ну то бишь возникает окошко, что типа куда надо слить файл...), а вот в 7ой возникает надпись" Что бы помочь обеспесчению безопастности IE заблокировал загрузку файла с этого веб-узла...". Если нажимаешь загрузка - то закачка не просходит, скрипт остается в том же состоянии.. Подскажите плз как беде помочь? | |
|
|
|
|
|
|
|
для: Maestro
(14.09.2008 в 22:14)
| | ну скажите плз кто-нибудь!!! | |
|
|
|
|
|
|
|
для: Maestro
(14.09.2008 в 22:14)
| | ну скажите плз кто-нибудь!!! | |
|
|
|
|
|
|
|
для: Maestro
(14.09.2008 в 22:14)
| | Например:
1. При нажатии "Загрузить" создаете в cookie флаг, сообщающий, что пользователь инициировал загрузку файла.
2. При загрузке страницы проверяете наличие флага.
3. Если флаг установлен, запускаете загрузку, не дожидаясь нажатия кнопки, и обнуляете флаг. | |
|
|
|
|
|
|
|
для: koshka
(15.09.2008 в 23:36)
| | ХЕм, мне собсвтенно что и нужно: как отследить тот факт, что пользователь нажал правую кнопочку мышки" и выбрал функцию загрузить файл? | |
|
|
|
|
|
|
|
для: Maestro
(16.09.2008 в 23:47)
| | Если пользователь сам выбрал загрузку из контесткного меню ("сохранить объект как" - вы, наверное, имеете в виду?), то ничего браузер не заблокирует.
Словом, приведите код, вызывающий загрузку файла, иначе ничего вам не посоветовать. | |
|
|
|
|
|
|
|
для: koshka
(17.09.2008 в 21:36)
| | Многоуважаемая Кошка, нет, я не это имею ввиду. Я имею ввиду, что когда пользователь нажимает <input type='submit' />, открывается впслывающее окно из скрипт начинает выгружать инфу, а винда блокирует. ВАм нужен код? Пожалуйста:
<?php
session_start();
function checkForJaDown($st){
for ($i=0;$i<strlen($st);$i++){
if ($st[$i]=='Я')
$st[$i]='я';
}
return $st;
}
if ($_SESSION["Reg"]!=true)
header("Location: /err.php");
include_once("PEAR/config_pear.php");
include_once("Spreadsheet/Excel/Writer.php");
require_once("mySqlOper.php");;
$id = $_GET["id"];
$xls =& new Spreadsheet_Excel_Writer();
$xls->_codepage = 0x04E3;
$titleFormat =&$xls->addFormat();
$titleFormat->setBorder(1);
$titleFormat->setLeft(1);
$titleFormat->setRight(1);
$titleFormat->setTextWrap();
$titleFormat->setAlign('center');
$conn = connectDB();
$res= mysql_query("select name from curtables where id=".$id);
$row = mysql_fetch_row($res);
$name = $row[0];
$sheet =&$xls->addWorksheet($name);
$conn = connectDB();
$res= mysql_query("show columns from `".$name."`");
$i=0;
mysql_fetch_row($res);
while ($row = mysql_fetch_row($res)){
$sheet->write(0,$i,checkForJaDown($row[0]),$titleFormat);
$i++;
}
$res= mysql_query("select * from `".$name."`");
$i=0;
$col=1;
while ($row = mysql_fetch_row($res)){
$i=0;$k=0;
foreach($row as $el){
if ($k==0){
$k=1;
continue;
}
$sheet->write($col,$i,checkForJaDown($el),$titleFormat);
$i++;
}
$col++;
}
$xls->send($name.".xls");
$xls->close();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title></title>
</head>
<body>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: Maestro
(17.09.2008 в 22:36)
| | Тогда зачем нужно отслеживать нажатие правой кнопокй мыши и т.д.?
В этом коде нет кнопки submit. У вас проблема на стороне клиента, так зачем вы мне серверный код выкладываете?
Как выглядит обработка на стороне клиента действий пользователя, которая должна приводить к загрузке файла, а приводит к описанной проблеме. Как выглядит в виде кода? | |
|
|
|
|
|
|
|
для: koshka
(18.09.2008 в 16:32)
| | Ув, koshka, если вам нужен sumbit, вот он:
<input type="submit" name="view" id="view" value="Загрузить" onclick="window.open
().location=Адрес Скрипта выше с некоторым $_get параметрами " />.
|
| |
|
|
|
|
|
|
|
для: Maestro
(18.09.2008 в 20:45)
| | ДА, что бы разъяниьт все точки над i, похоже вы НЕ понимаете суть проблемы. Нажатие правой Кнопки я НЕ отслеживаю. При работе системы открывается скрипт показанный выше и в верхней части экрана всплывает сообщение, что "Загрузка ЗАблокаирована(подрузамеваю самим Браузером"). Такая вещь есть на многих сайтах,это стандартно. Если кликнуть по этому сообщению мышкой появляется мини-минющка, в ней несколько команд, одна из них "разрешить загрузку файла". По уму после нажатия начинается загрузка фалйа, а у меня остается все на "About blank". Как сделать все по уму. | |
|
|
|
|
|
|
|
для: Maestro
(18.09.2008 в 20:52)
| | Да что вы?..
По уму - вообще не нужно открывать никаких окон, а сделать по щелчку переадресацию на скрипт, который никакого пустого html выводить не будет, а будет отдавать сформированный документ excel, послав предварительно заголовок content-type. | |
|
|
|
|
|
|
|
для: koshka
(20.09.2008 в 19:59)
| | Уважаемая koshka, спасибо за ответы, но мне кажется вы просто совершенно не обладаете необходимой компентностью в данном вопросе. Не надо разводить пустых слов и давать обходные пути. Я просил одно, вы мне предлагаете совершенно другое, либо просто не понимаете, о чем я конкретно говорю. Прошу больше не отвечать на данный вопрос. Либо кто-нибудь другой ответит, либо докапаюсь до истины сам.
З.Ы. Да, если вы работали с библиотекой PEAR и хоть чуть-чуть копались в коде, то знали бы, что conten-type высылается методом ->send(). | |
|
|
|
|
|
|
|
для: Maestro
(20.09.2008 в 23:18)
| | поправлено модератором... | |
|
|
|