php爬取flash数据 php爬取网页数据

flash怎么把数据传到后台最好是php

不好说,给你转个教程吧。后台的话还是要JS来调用。

创新互联公司是一家集网站建设,怀化企业网站建设,怀化品牌网站建设,网站定制,怀化网站建设报价,网络营销,网络优化,怀化网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

Flash是可以轻松与网页交互数据的,不然为何Flash会有这么大的生命力呢?只是这样编程比较麻烦而已,又要调试Flash,然后又要放到服务器上调试。不过这样的方式能够收到很好的效果,Flash强大的绘图功能、图形功能,能够与网页的参数传递联系起来,配合后端的服务器语言,能够收到很大效果。

下面举个例子用ActionScript3.0来说明这个问题,如下图:

IE6效果:

火狐效果:

一旦浏览器装上Flash插件,Flash就能够轻松与网页互通消息。无论在任何浏览器,现在基本上用户都会装上Flash组件的,可以这样说,几乎就没有不装Flash组件的浏览器。

一、Flash部分

1、首先,新建一个ActionScript3.0的Flash,新建之后就保存为webPage.fla,这次的Flash无须这么大的尺寸,否则网页中会有很多的留白,设置大小为500x100px就可以了。播放器的版本按照默认就可以,因为用户的浏览器Flash组件会自动更新的。这个不用管。

2、通过窗口-组件,或者Ctrl+F7打开组件面板,利用自带的按钮、标签文本、输入框组件布置界面。

3、拖出如下的界面,设置各个组件的属性如下,设置其text值,也就是要显示的文字,为部分要控制的组件设置实例名称,也就是Id,比如按钮设置成Button1,输入框设置成EditField1,一会儿要给网页JavaScript控制的标签文本的text值清空,其实例名称为Label1。

4、之后点击第一帧,打开动作面板,或者点击F9,写入如下的代码:

[javascript] view plain copy print?

import flash.external.ExternalInterface;

flash.system.Security.allowDomain("*");

flash.system.Security.allowInsecureDomain("*");//设置允许所有网站都允许Flash与网页之间交互

Button1.addEventListener("click",function(){//点击Button1这个按钮

ExternalInterface.call("show",EditField1.text);

//则调用JavaScript中的function show(message){}函数,其中message这个参数值,由EditField1输入的东西填充

});

function JavaScriptShow1(message1){

//定义一个函数,一旦这个函数触发则把传来的值,填充Label1这个标签文本

Label1.text=message1;

}

ExternalInterface.addCallback("JavaScriptShow1",JavaScriptShow1);

//注册JavaScriptShow1这个函数,其对外名称为JavaScriptShow1,一般都应该相同的

//网页调用Flash对象的JavaScriptShow1的方法,则相当于调用ActionScript中的JavaScriptShow1(message1){}函数

import flash.external.ExternalInterface; flash.system.Security.allowDomain("*"); flash.system.Security.allowInsecureDomain("*");//设置允许所有网站都允许Flash与网页之间交互 Button1.addEventListener("click",function(){//点击Button1这个按钮 ExternalInterface.call("show",EditField1.text); //则调用JavaScript中的function show(message){}函数,其中message这个参数值,由EditField1输入的东西填充 }); function JavaScriptShow1(message1){ //定义一个函数,一旦这个函数触发则把传来的值,填充Label1这个标签文本 Label1.text=message1; } ExternalInterface.addCallback("JavaScriptShow1",JavaScriptShow1); //注册JavaScriptShow1这个函数,其对外名称为JavaScriptShow1,一般都应该相同的 //网页调用Flash对象的JavaScriptShow1的方法,则相当于调用ActionScript中的JavaScriptShow1(message1){}函数

5、此时Flash的部分完毕,选择文件-发布,打开Flash保存的文件夹。其实上面的内容比《【ActionScript】ActionScript3.0的Helloworld》(点击打开链接)没复杂多少,只是多了两句注册ActionScript与JavaScript的交互的语句而已。

二、网页的部分

1、之后,要把这个Flash布置到网页上。Flash发布之后,会在网页中生成两个东西一个html与一个swf,核心文件是.swf文件,html文件不能照搬的,只能借鉴其中的代码,否则不能兼容野狐禅、谷歌等浏览器。

这个由Flash生成webPage.html页面,可以借鉴的代码如下:

2、由于Flash禁用了Flash调用本地文件的功能。你只能把这个webPage.swf拷贝到你的服务器上调试。之后在服务器上新建一个.html的页面,这里以swf.html与webPage.swf同目录做例子,如果不同例子请自己设置好绝对路径,假设是swf.html,swf.html的HTML布局如下:

[html] view plain copy print?

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ""

html xmlns="" lang="zh-CN" xml:lang="zh-CN"

head

titlewebPage/title

meta http-equiv="Content-Type" content="text/html; charset=utf-8" /

/head

body

Flash与网页交互

input type="text" id="text1" /

button onclick="toFlash()"发信息给Flash!/button

!--这段代码的部分可以在发布出来的html中截取--

div

object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="100" id="webPage" align="middle"!--这里的id是为了flash给IE系列浏览器控制--

!--对IE有效的代码--

param name="movie" value="webPage.swf" /!--为IE浏览器指明flash的路径--

param name="quality" value="high" /

param name="bgcolor" value="#ffffff" /

param name="play" value="true" /

param name="loop" value="true" /

param name="wmode" value="window" /

param name="scale" value="showall" /

param name="menu" value="true" /

param name="devicefont" value="false" /

param name="salign" value="" /

param name="allowScriptAccess" value="always" /!--这里一定要设置成always,打开Javascript与Actionscript的交互权限--

!--对野狐禅、谷歌等有效的代码--

embed src="webPage.swf" width="500" height="100" id="webPage"/embed!--这里的id是为了flash给野狐禅、谷歌等浏览器控制,src的值为野狐禅、谷歌等浏览器指明flash的路径--

/object

/div

/body

/html

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "" html xmlns="" xml:lang="zh-CN" head titlewebPage/title meta http-equiv="Content-Type" content="text/html; charset=utf-8" / /head body Flash与网页交互 input type="text" id="text1" / button onclick="toFlash()"发信息给Flash!/button !--这段代码的部分可以在发布出来的html中截取-- div object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="100" id="webPage"!--这里的id是为了flash给IE系列浏览器控制-- !--对IE有效的代码-- param name="movie" value="webPage.swf" /!--为IE浏览器指明flash的路径-- param name="quality" value="high" / param name="bgcolor" value="#ffffff" / param name="play" value="true" / param name="loop" value="true" / param name="wmode" value="window" / param name="scale" value="showall" / param name="menu" value="true" / param name="devicefont" value="false" / param name="salign" value="" / param name="allowScriptAccess" value="always" /!--这里一定要设置成always,打开Javascript与Actionscript的交互权限-- !--对野狐禅、谷歌等有效的代码-- embed src="webPage.swf" width="500" height="100" id="webPage"/embed!--这里的id是为了flash给野狐禅、谷歌等浏览器控制,src的值为野狐禅、谷歌等浏览器指明flash的路径-- /object /div /body /html

之后的JavaScript布局,是ActionScript与JavaScript交互的核心,代码如下:

[javascript] view plain copy print?

script type="text/javascript"

//给ActionScript所调用的JavaScript函数,message这个参数被ActionScript传递过来的值所填充

function show(message){

alert(message);

}

//获取Flash对象的函数,不同的对象有不同的方法。为了兼容,只能这样写。

function getFlash(movieName){

if (window.document[movieName]) {

window.document[movieName];

}

if (navigator.appName.indexOf("Microsoft Internet") == -1) {

if (document.embeds  document.embeds[movieName])

return document.embeds[movieName];

}

else {

return document.getElementById(movieName);

}

}

//获取Flash对象

var flash1 = getFlash('webPage');

//JavaScript调用ActionScript中注册为JavaScriptShow1的函数

function toFlash(){

var text1 = document.getElementById("text1").value;

flash1.JavaScriptShow1(text1);

}

/script

script type="text/javascript" //给ActionScript所调用的JavaScript函数,message这个参数被ActionScript传递过来的值所填充     function show(message){             alert(message);     }      //获取Flash对象的函数,不同的对象有不同的方法。为了兼容,只能这样写。     function getFlash(movieName){         if (window.document[movieName]) {             window.document[movieName];         }         if (navigator.appName.indexOf("Microsoft Internet") == -1) {             if (document.embeds document.embeds[movieName])                  return document.embeds[movieName];         }         else {             return document.getElementById(movieName);         }     }      //获取Flash对象     var flash1 = getFlash('webPage');      //JavaScript调用ActionScript中注册为JavaScriptShow1的函数     function toFlash(){         var text1 = document.getElementById("text1").value;         flash1.JavaScriptShow1(text1);     } /script

三、总结

综上所述,webPage.swf与swf.html的交互如下图:

如何使用Flash连接数据库(PHP)

loader = new LoadVars();

loader.load("server.php?time="+new Date().getTime()); //向ASP取得资料的连接, 这里我不使用Math.random是因为这样有个缺点loader.onLoad = function(success) {

if (success) {

display.htmlText = loader.Result; //loader.Result是ASP传递回来的资料} };

} submit.onRelease = function() { //当按钮按下放开的时候if (name.text.length == 0) { //这里是判断输入框是否为空Selection.setFocus(name); //把光标设定在指定的输入框} else if (msg.text.length == 0) { //同上

Selection.setFocus(msg);} else {status.text = ""; //这个动态文本你们可以自己设定sender = new LoadVars();

sender.onLoad = function(success) {

if (success) {

if (sender.Result == "Success" ) { //传递回来的讯息为Success时status.text = "记录成功...";

name.text = msg.text=""; //清空输入栏位loadData(); //重新刷新资料} else {

status.text = "记录失败, 请再次尝试...";

} delete sender; //养成习惯把LoadVars变量删除以释放内存空间} };

sender.load("server.php?action=savename="+name.text+"msg="+msg.text, sender, "POST" );//和sendAndLoad的功用一样, 传送出变量并等待资料传回, 传回的资料会在onLoad中截取} };

loadData(); //在一开始载入资料库中的资料 PHP部分 :

如何爬取flash网页上的表格数据

无法直接抓取的,因为不同于html5的明文显示,

flash的内容编译成了abc码。

请问php如何获取以及保存flash as3传过来的xml?

php5以上的话可以用simplexml非常简单(发送的时候as3中的发送类型为"text/xml")

$xml = $GLOBALS ["HTTP_RAW_POST_DATA"];

$fp = fopen("myxml.xml", "w");

fwrite($fp, $xml);

fclose($fp);

php接收flash传入的数据生成图片

flash 可以读取由php 生成的txt,xml

php可以接收flash post 或get的请求

如何获取网页中Flash的数据

用Internet临时文件的功能就能实现,下面是我回答过一个朋友关于怎样下载Flash游戏的问题,你完全可以参考这个办法。

其实,不用FlashGet也是完全可以下载到黄金矿工的。

下面跟着我一步一步做吧!

一,首先登录 http //www 4399 com/ 网站,这个是比较有名的在线小游戏网站。

二,进入后,在左边的排行榜里,你能找到“黄金矿工中文版”,点击进入。

三,进入黄金矿工的页面后,它是在线玩的,不支持直接下载,点击开始玩这个游戏,玩上一会吧。

下面真正的技巧在这里!

四,退出游戏,但千万不要关闭IE浏览器。

五,点击IE浏览器窗口上面的“工具”、“Internet选项”。

六,在“Internet”选项窗口中,在“Internet临时文件”区域,点“设置”按钮。

七,在弹出的“设置”窗口中,点“查看文件”按钮。

八,这时会弹出一个窗口,这个窗口里显示的就是你上网时产生的临时文件,找到名字叫“1[1].swf”的文件,选中,点鼠标右键,再左键点“复制”。

九,打开硬盘里的任意一个文件夹,例如打开“我的文档”,在窗口空白处点右键,左键点“粘贴”就行了。

十,这样,你就可以关闭IE浏览器,断开网络,放心的运行“1[1].swf”了,这个文件就是黄金矿工中文版!你可以将它改名。

IE浏览器可以打开它!

这个方法其实就是利用Internet临时文件夹的功能,所有在线玩的小游戏、在线观看的视频片段、在线听的歌曲,都是先下载到Internet临时文件夹中运行的,退出IE后,这些临时文件往往会自动删除,所以,在复制临时文件夹里的东西时,不要关闭IE。

注意事项:

一般进入Internet临时文件夹时,里面会有非常多的东西,要找自己想要的文件比较困难,以黄金矿工为例,它是swf格式的,那么Internet临时文件夹里会有很多swf格式的文件,哪一个才是呢?

所以,最好的办法,就是在玩在线小游戏之前,先按照上面的方法,在“Internet”选项窗口中,在“Internet临时文件”区域,点“删除文件”按钮,再确定。把临时文件夹里的东西事先全部清空。

然后,再进入小游戏,成功运行后,退出,马上到Internet临时文件夹里,这样就能很容易地找到自己想要的东西了。

用这个方法,你可以下载很多在线才能玩的东西,还有,包括很多要收费才能下载、但却可以在线试听的手机铃声,是不是很爽!


新闻名称:php爬取flash数据 php爬取网页数据
网页地址:http://hbruida.cn/article/hiodhs.html