Flash8与PHP-MySQL数据库间的交互

1,目标

Flash第一帧读取MySQL的数据,逐条显示,数据从a.php中得到。在这一帧上添加一个“提交”按钮,加一个文本输入框。

Flash第二帧发送文本输入框中的数据到b.php,写入数据库,成功则回到第一帧显示最新结果。

 

2,实现过程及代码

(1)在MySQL中创建一个数据库flash,并创建一个表`user`,注意使用时user前后要有引号(!前面的键),该SQL语句在lib.php中

(2)a.php:从数据库中获取数据,b.php:向数据库中写入数据,代码如下:

a.php

b.php

lib.php(a.php和b.php都加载了lib.php)

 

(3)建立一个flash文件,取名conn.fla,代码如下:

第一帧负责加载数据并显示,并添加一个按钮和一个输入框(变量:in_text),代码如下:

 

第二帧,负责发送数据

按钮,发送数据需要按下按钮

 

3,注意点

(1)需要创建动态文本显示数据,有多少个元组就要创建多少个文本框,每个文本框的名字必须唯一。

创建动态文本框的函数为createTextField(),第一个参数为文本框的名字,第二个为深度depth,第三、四个参数为文本框的位置(x,y),第五、六个参数为文本框的长和宽。

(2)文本框的使用。首先不能枚举,如"mytext0","mytext1",...,因为记录数量不确定。使用时须

obj = eval("mytext"+i);

obj.text = "xxxx";

(3)文本框的样式。obj.setTextFormat(myFormat);该句设定了显示的样式,样式定义代码在最上面。其他样式可以去查类TextFormat()。

(4)文本框的内容。a.php的获取的所有数据拼在一个字符串里,按","分割。如果一个数据对应一个变量的话,那么for循环里的obj.text将没法赋值。

(5)输入框的“自动调整字距”前面的勾去掉,否则输入的则带有<html>标签。

(6)发送数据使用的函数是sendAndLoad,而不是send(),因为send不会更新最新的结果。

(7)关于刷新,一个很奇怪的问题。如果第一帧load代码是lv.load("http://localhost/flash/a.php");的话,Ctrl+Enter测试,一切正常。但放到网络上,就出问题了:提交后回到第一帧,获取的数据并不是最新的。所以a.php后面要加一个时间参数,参数名字随便。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值