FLASH网页文件包怎么免费flash上传网网站

php中完美解决flash上传文件不能带Cookies问题 - 郭鑫的技术资料库 - ITeye技术网站
今天在项目中用到了网络上一个比较好的swiff uploader 文件上传组件,单独放到服务器测试其上传没点问题,因为没有用到鉴权等操作不会用到cookie或者session,问题不会暴露.
好了,将这个组件整合到我的项目中去,ie中没问题,一切正常,而我习惯于firefox下作开发,问题出现了.在处理上传的php脚本(upload_action.php)中加入了同一个的鉴权以及配置文件.config.php代码如下:
//引入我系统的配置文件,此文件里面做了登录验证等操作,没登陆将跳到登陆页面.
require_once("config.php");
//省略若干业务逻辑代码.
当 再次请求我的upload.php时候,发现上传文件总是会包302错误.后来查了下错误代码,是被重定向了,
这是由于没有登陆导致跳转到登陆页面导致的(开始一直不知道什么原因,后来才知道.)
用户登录验证不通过.
因为我的用户验证过程是通过将userid时间戳等一系列参数存放到session来判断是否登录的.
这说明是没获取得到session,所以登录失败了.
在进一步就是说,上传这个过程在firefox中没有将sessionid传送到服务器去后来查了网络资料才知道这是个flash的bug.
网络引用资料:
使用SWFUpload的时候一定要小心cookie bug:在非IE内核内核的浏览器下使用SWFUpload上传文件时,该请求会忽略自身浏览器中的所有cookie ,只会 将IE浏览器下的属于该域的持久cookie(persistent cookies)发送到服务端,非持久cookie( Session only)不会被发送。遗憾的是此Bug并非是SWFUpload内部实现的问题(所有的 Flash上传都会存在此bug),而是FlashPlayer的bug,所有使用FileReference类上传文件时会存在此问题。幸运的是我们有办法绕开此陷阱。
现在知道问题所在,现在来看看我的解决方法.
因为swiff uploader 的类中,能直接传入post的数据 data所以我在data中就放入了我的sessionid(这个是通过js读取来的.)
读取sessionid的js代码:
//用来读取特定的cookie值。
function getCookie(cookie_name) {
var allcookies = document.
var cookie_pos = allcookies.indexOf(cookie_name);
// 如果找到了索引,就代表cookie存在,
// 反之,就说明不存在。
if (cookie_pos != -1) {
// 把cookie_pos放在值的开始,只要给值加1即可。
cookie_pos += cookie_name.length + 1;
var cookie_end = allcookies.indexOf(";", cookie_pos);
if (cookie_end == -1) {
cookie_end = allcookies.
var value = unescape(allcookies.substring(cookie_pos, cookie_end));
通过firefox的插件 web developer插件查看到cookies的值 php的sessionid
存放cookie名称为:
PHPSESSID = getCookie("PHPSESSID");
cookiesifo = "PHPSESSID=" + PHPSESSID;
var swiffy = new FancyUpload2($('demo-status'),
$('demo-list'), {
url : $('form-demo').action,
fieldName : 'photoupload',
path : 'upload/Swiff.Uploader.swf',
data : cookiesifo,
limitSize : 2000 * 1024 * 1024, // 2Mb
onLoad : function() {
$('demo-status').removeClass('hide');
$('demo-fallback').destroy();
// The changed parts!
debug : true, // enable logs, uses console.log
target : 'demo-browse' // the element for the
// overlay (Flash 10
而在服务器端脚本(php的脚本)中为了能拿到对应的session数据,我将sessionid重新设置
,在处理上传文件的最开头处加入下面这句话:
session_id($_POST['PHPSESSID']);这个也能解决php session跨页面丢失问题.详细用法请
查阅网络 搜索 跨页面丢失session php
这样子就能得到正常的session值了,登录验证问题完美搞定.
到此上传完全正常.
浏览: 128198 次
来自: 深圳
有问题,校验http://a.a-a.html?a=d 为fa ...
汗哒哒,原路径在这里: ...
找到原因了,用2.2的模拟器就可以了,4.0的有问题。
哎,我也遇到了这个问题啊,很蛋疼啊。错误如下:emulator ...当前位置: >
Flash技巧教程:解说如何导入PSD文件
阅读工具:字体:
本例为Flash CS3仿真艺术设计系列教程,在上一课中我们学习了位图动画的表现,在这一课中我们将学习导入PSD文件的一些知识,希望能给朋友们带来帮助~~
5.11 PSD导入(JIB JAB)
在Flash cs3中一个非常酷的特色是导入PSD.你现在已经有能力直接将PSD导入flash中了。这是一个巨大的工作改进,是一个伟大的特色,它将Photoshop与Flash连在了一起。
1. 这是Photoshop文件看到的层。也许许多图片有透明的背景。透明是在导入时需保持的许多特征之一。
2. 在Flash中,去文件&导入,导航到你的PSD文件。PSD导入向导将自动打开。,还有一个方便的每层预览小窗口,你可以选择或删除某个来导入。其它的选择包含编辑层的风格,转换为影片剪辑,压缩和层怎样在时间轴上分布(层或帧)。
3. Flash 还提供了一个PSD导入选项面板,它将使你能设置你自已想要的每个省缺选项。现在去 编辑&首选参数 并点击左边栏中的PSD文件导入器。
4. 也许你喜欢在导入后将图片转换成元件。在库中保持元件名称与导入的图片名称一样。
5. 使用自由变形工具(q)编辑每一个元件的中心点。
6. 肩将连在身体上旋转,前臂则在肘上旋转。
7. 这个布什总统的图片在web搜索中很容易找到。象手那样的素材可以用你数码相机获得并在Photoshop中编辑。
8. 重新使用手臂素材作为腿,复制并粘帖它们到新的图层。然后缩放和拉伸复制的图形将它们对齐到你角色的大腿和小腿。
9. 骨盆的区域用一个创建的形状和一个导入的图片来填充。使用渐变变形工具(f)缩放它,看着象蓝色的织物。
10. 在第1帧,按你第一个草图的样子摆好姿势。你可以选择将草图放在旁边或干脆直接放在元件下面。无论你更喜欢哪种方法,主要的目的是用相同的姿势定位角色。在你的第二个关键帧,根据草图定位角色的最终的姿势。你不能水平翻转元件否则你将破坏补间动画。
提示:除文件&导入以外,你还可以从PSD导入向导拖动一个PSD文件到flash舞台上。 当导入到flash时始终保持在Photoshop中的RGB颜色值以保持他们的一惯性。
(责任编辑:大宝库)
------分隔线----------------------------
本文中我们介绍几种方法,让 Flash动画适应任何分辨率的网页。 方法1.使用thisin 在fl...
Flash初学者总有很多的疑问,我们收集整理了部分初学者常见的一些问题和答案,希望对...
赞助商链接
赞助商链接基于servlet导出Flex/Flash界面为图形文件的简单方法 - lwz7512-RIA传播者 - ITeye技术网站
博客分类:
使用flash能做出很好的界面或者图表(chart),但是如何将这些内容保存成图片呢,这个问题是个值得考虑的难题。本文将简单的描述一下解决思路并给出代码。
1。第一步:获取要导出的flash图形数据
通过AS3的bitmapdata类将界面上某个要截取的diplayobject转换为ByteArray,通过ExternalInterface传递给html页面中的表单。
2。第二步:将转换的位图数据传递到后台
这个是最难的部分,如果采用flex的数据服务则代价昂贵,如果采用amfphp/openphp又比较麻烦,那怎么办呢?
解决方法:将bytearray编码为base64的字符串进行http传递。
3。第三步:将客户端传来的数据转换为图形文件
既然前端传来的是base64字符串,那就需要基于java的base64解码方法,然后转换为byte[],这样就可以生成图形文件了。
下面给出需要的资源:
a)bitmapdata转换为图形ByteArray的类:
http://www.kaourantin.net/2005/10/png-encoder-in-as3.html
http://www.kaourantin.net/2005/10/more-fun-with-image-formats-in-as3.html
b)bytearray转换为base64编码的类:
/goodies/base64
c)解码base64字符串为byte[]的类:
http://www.source-code.biz/snippets/java/2.htm
论坛回复 /
(5 / 4728)
浏览: 277534 次
来自: 北京
可以问下如何通过使用JasperReports
lordhong 写道bigpanda 写道
另外通读Flex ...
bigpanda 写道我是第零级,花了一个周末把Flex的文档 ...搜狗问问-搜狗旗下最大互动问答社区}

我要回帖

更多关于 优酷上传flash 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信