主页 > 发现专利 >[教学]如何在Flex中透过HTTPService和PHP传 >
[教学]如何在Flex中透过HTTPService和PHP传

2020-05-22


先前已经大致上介绍Flex的外观设计该怎处理后,接下来我们就要进行后端的程式码部分,否则你的Flex可能只有外观而毫无作用。Flex要输入程式码的部份,首先要导入一些函数,就像Java一样,在开头的部份需要import一些东西,才能使用特定功能。

因为PHP比较简单,所以就利用Flex结合PHP并且透过HTTPService来接收表单的值,然后在回传到Flex中并显示出来,当然这部份教学,梅干大师已经写过了,不过为了延续先前的教学,就再写一下,这样感觉比较有一体成型的FU。

在处理Flex透过PHP传送与接收表单值之前,首先要确定已经完成好Flex表单雏型,接下来我们要替各个表单内的元件设定名称,当名称命名完成后,这就表示每一个表单内的物件都有名称,之后透过Form传值时,PHP在接收的时候才会知道哪一个值是由哪一个表单物件所传出来的,最后才能做PHP端的运算,产生出正确的结果,当然命名个物件栏位名称时,要小心Flex的保留字,像是「class」就是保留字啰!

第1步 首先在Flex中,设计区块请切换到「Design」,接着将滑鼠点在物件上,例如点在「ComboBox」(其它的请依此类推),但千万别连同前面的Lable一起选取,不然会出问题。选取好后,切换到右下方的区块,找到「Common」中的「ID」,在ID内请输入你要定义的名称,请小心保留字。

[教学]如何在Flex中透过HTTPService和PHP传

第2步 如果你都将各栏位的ID输入好后,切换到「Source」介面中,可以看到在「ComboBox」或是「TextInput」等等之中多了一个id,这就表示新增正确啰!

[教学]如何在Flex中透过HTTPService和PHP传

第3步 接下来我们要输入一些Script语法,透过Script语法来处理表单内的值,大概在程式码第二行后加入一串语法,当然语法里面要做一些修正,否则栏位对应会有问题。

找到

在下方加上以下语法:

                

其中的语法「obj.year = this.year.text;」,里面的「year」是里的栏位ID,请依照您的栏位ID输入,有几个栏位ID就要有几串该语法。其它的语法就请大家自行研究看看啰!

[教学]如何在Flex中透过HTTPService和PHP传

第4步 接着请在刚刚的「」后方加入我们要使用的传值方法的语法,我们要透过「HTTPService」来联繫PHP并能传值与接收值。在语法中,有一个「id =”phpflex“」其中的「phpflex」名称必须和前面的Script语法「this.phpflex.send(obj);」中的「phpflex」相对应。

而「url=”http://127.0.0.1/flex.php”」这个则是我们待会要建立的PHP档案,是个用来接收表单值与回传值的PHP档案,至于档案路径您可以随意变更,但请确保可以正确连线,否则一样无法接收与传送值。至于「method=”POST“」这则是说明传送方法透过「POST」方式来传送表单内的值。

[教学]如何在Flex中透过HTTPService和PHP传

第5步 接着请开启纯文字文件并输入以下语法,然后将此档案储存成「flex.php」并且放在伺服器的根目录。您可自定义档案名称与放置的路径,若有变动的话,要与第4步语法中的「url=”http://127.0.0.1/flex.php”」相对应。

以「$year = $_POST[“year”];」为例:「$_POST[“year“]」这是接收Flex表单其中的「year」栏位并透过POST方式来接收值(因为在第4步骤最后有提到我们是透过POST方式传值,所以接收时也要透过POST才能接收)。而接收到的值则存入一个字定义的变数「$year」(为了避免名称太多混乱,建议字定义变数就和Flex中的ID名称一样会比较好判断)。当然你有多少个栏位就要宣告多少个变数来接收值。

至于语法后半段「echo “学年:”.$year.”\r”;」:这是说明利用「echo」印出值,非PHP的东西要印出必须採用「””」才能印出,若要将非PHP与PHP的东西结合列印出,那要透过「.」来连结,例:「”学年:”.$year.“\r”」。其中的「\r」输出就是「\r」而已,但因为我们是将php的输出结果回传到Flex中,而在Flex中,「\r」的意思是换行,所以最后显示的「\r」会变成换行的效果,并不会显示「\r」。

[教学]如何在Flex中透过HTTPService和PHP传

第6步 当PHP部分处理完后,最后我们回到Flex中,找到你的按钮,并在按钮的lable语法后方加上:

click="button_click(event)"

这语法中的「button_click」是和第3步语法中建立的函式是相呼应的,简单说就是当程式侦测到滑鼠有点击了「Button」,然后就会呼叫程式中相对应的函式来处理表单内的值。

[教学]如何在Flex中透过HTTPService和PHP传

第7步 当前面步骤都完成后,请记住在执行前记得将您的TWAMP启动,接着请点击右上角的绿色播放按钮或是按﹝Ctrl﹞+﹝F11﹞来编译Flex。

[教学]如何在Flex中透过HTTPService和PHP传

第8步 当编译后,会自动开启浏览器并秀出您的Flex製作后的成果。您可以试用看看能否传送与接收值?

[教学]如何在Flex中透过HTTPService和PHP传

第9步 若确定可以传送与接收,那您应该会看到以下画面,Flex会跳出一个小框框并秀出您刚选取的值。

[教学]如何在Flex中透过HTTPService和PHP传



上一篇:
下一篇:


相关文章
今日焦点
一周热榜