作者hirabbitt (兔子)
看板Flash
标题[问题] amfphp多个变数的呼叫
时间Tue Mar 29 16:40:58 2011
我是想实做"创新帐号"的功能
flash将帐号密码丢给php去判断处理
如果帐号已存在就返回false
反之就帮玩家创造帐号并返回true
flash部份:
stop();
import flash.net.*;
var c1:NetConnection = new NetConnection();
c1.connect('
http://***.***.***.***/amfphp1.9/gateway.php');
var r1:Responder = new Responder(
function(res:Object):void {
trace(res+"ok");
if(res.toString()=="true"){
gotoAndStop(4);
}else{
acc.text="帐号重覆请重新输入";
pa1.text="";
pa2.text="";
}
},
function(res:Object):void {
trace(res+"ng");
});
cre.addEventListener(MouseEvent.CLICK,
function(E:MouseEvent):void{
c1.call('supernewacc.supernewacc',r1,acc.text,pa1.text) //将帐号密码传至php
});
php部份:
<?php
class supernewacc{
function supernewacc($acc="",$pas=""){
//接到从flash传来的帐号密码
$conn=mysql_connect("127.0.0.1","***","***");
$dbname="***_***";
$select=mysql_select_db($dbname,$conn);
$result=mysql_query("SELECT * FROM accdata WHERE acc='".$acc."';");
$num=mysql_num_rows($result);
//判断此帐号是否已经存在
if($num==1){
return false;
}else{
$result=mysql_query("INSERT INTO accdata (`index`,`acc`,`pas`) VALUES
(NULL,'".$acc."','".$pas."');");
return true;
}
}
}
?>
执行结果:
资料库
index acc pas
1 supernewacc
//不知道为什麽资料库会多出这一笔资料
2 hirabbitt hirabbitt
flash trace
trueok
//只有一次trace
不知道为什麽明明只呼叫一次
却新增了两笔资料
其中一笔还是莫名其妙的值
请帮帮我
谢谢
--
◤ __ \__◣
◢◤◢◤ ψhirabbitt
◢ ◤ ◢███◣
◢███◣
我不是m █████
█████ 我不是s
██
●█
● █▇███
是温柔 ██
╱╲ ●◥█████◣● 是傲娇
◥
╱█
╱╱ ● ◥████ ˇ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.13.127.91
※ 编辑: hirabbitt 来自: 163.13.127.91 (03/29 16:42)
1F:→ KawasumiMai:确定sql语法对吗?直接用php呼叫一次新增动作看看? 03/29 16:56
2F:→ hirabbitt:不懂 php要怎麽呼叫? 03/29 17:37
3F:推 KawasumiMai:直接输入一次.php?acc= &pas= 看结果如何啊 03/29 17:45
4F:→ KawasumiMai:或是在php内先假定一行$acc="abc"跑一次 03/29 17:46
5F:→ KawasumiMai:不过我对3.0不熟,我不知道为什麽php里面会有class 03/29 17:47
6F:→ KawasumiMai:照理说呼叫php判断值之後直接依序执行应该就OK了 03/29 17:49
7F:→ KawasumiMai:之前我是在Flash中宣告一个URLVariables用POST送出去 03/29 17:50
8F:→ KawasumiMai:还没试过这种直接呼叫php的function并依序传值的 03/29 17:50
9F:→ hirabbitt:喔喔 我试试看 03/29 17:56
10F:推 KawasumiMai:啊糟糕,是amfphp.... 03/29 17:56
11F:推 KawasumiMai:不好意思我说的方法太老旧了QQ 03/29 17:58
12F:→ KawasumiMai:难怪里面会需要用到class 03/29 17:59
13F:→ aquarianboy:如果要一次传多个变数的话,可以试试用JSON格式传 03/29 18:10
14F:→ aquarianboy:在AS用JSON打包後,PHP有json_decode的东西可以解 03/29 18:10
15F:→ aquarianboy:不过JSON在AS3并不是内建的method,请洽as3corelib 03/29 18:11
16F:→ hirabbitt:JSON和amfphp是两块不同的东西? 我研究看看... 03/29 18:13
17F:→ hirabbitt:不过还是希望有amfphp的解决方式 03/29 18:13
18F:→ aquarianboy:是两件事,但不冲突,JSON只是把你的参数先编成文字之 03/29 20:57
19F:→ aquarianboy:後再传给AMFPHP,AMFPHP也还是PHP,所以可以用PHP的 03/29 20:57
20F:→ aquarianboy:json_decode来还原你刚编的字串,这跟是不是AMFPHP的 03/29 20:58
21F:→ aquarianboy:解决方式无关的 03/29 20:58
22F:→ Kcars:资料库的怪资料跟class name一样 :Q? 03/29 22:23
23F:→ oj113068:对不起ˊˋ我看不懂楼上提的是什麽 03/30 00:02
24F:→ oj113068:囧推错篇 请无视 03/30 00:03
25F:→ hirabbitt:对! 怪资料跟class name一样 03/30 18:03
26F:→ sextitanic:讲个不相关的事,如果index有设auto_increment 03/30 18:52
27F:→ sextitanic:那就不用特地去 insert 一个 null 的值给它了 03/30 18:52
28F:→ sextitanic:要传多变数比较冒险的方式你可以直接传阵列 03/30 18:53
29F:→ sextitanic:不过某次flash一更新之後抓阵列的值就会有问题 XD 03/30 18:53
30F:→ sextitanic:amfphp里面有个browser可以用那个传值测试 03/30 18:55
31F:→ sayaku0210:要是我~我会把变数包成Object传~再到PHP抓物件里的变数 04/07 16:01
32F:→ hirabbitt:不太懂包成物件的意思 是只自定物件类别吗? 04/14 10:08
33F:→ hirabbitt:就算flash和php都自订了 会一样吗 04/14 10:08