yuhezheng 2012-09-09 10:56:05 5292次浏览 5条回复 0 0 0

php新手,问个纯菜鸟问题,大家不要笑话 就是我想知道怎么做下载功能啊。比如用户访问个http://www.xxx.com/xxx,浏览器就会自动下载某个文件?

这是论坛里有人问过的,我路过,看到这个帖子了,我还是不懂,有简单的例子吗,做好的一段,可以运行的那种?

  • 回复于 2012-09-09 10:58 举报

    补充:
    他提到的sendFile(),这个方法不会用

    $type = LFilter::checkString($_GET['t']);
    $dataProvider = Book::model()->findByPk($id);
    $content = $this->renderPartial('book',array(
    'dataProvider' => $dataProvider,
    'type' => $type,
    ),true,false);
    Yii::app()->request->sendFile($dataProvider->name.'.'.$type,$content);
    
  • 回复于 2012-09-09 12:23 举报

    这段代码里,哪儿不懂呢?

  • 回复于 2012-09-09 19:45 举报

    呵呵,比如,我要下载一本书名字叫:“乔布斯传”,我在一个页面点击下载,然后来到下载页面,点击下载页面的 乔布斯传,浏览器下面弹出“保存”,“打开”,开始下载。
    要有路径,要有链接啊,可是我怎么传递,那些代码,放在一起,还是分开,放View里一些吗?呵呵,我套不进去,有个简单的例子吗?

  • 回复于 2012-09-10 11:38 举报

    可以让controller从model里取出文件名称、路径等信息,然后controller把这些信息再传送给view,view生成下载链接,就可以下载了。

  • 回复于 2012-09-10 12:05 举报

    顶楼上。在controller生成成连接后,使用redirect到连接,就会下载了。

您需要登录后才可以回复。登录 | 立即注册