flash++json+php+MySQL身份认证系统

来源:互联网 发布:软件编程工具官网下载 编辑:程序博客网 时间:2024/04/29 20:24
文件系统为Entrance.mxml(flxe builder3+JSON(corelib-[1].85))+
loginJun.php+crossdomain.xml(Apache+php)+  
auth_user(MySql5 table,db asterisk)

Entrance.mxml::

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF" width="630" height="400">
<mx:Script>
<![CDATA[
  import mx.collections.ArrayCollection;
        import com.adobe.serialization.json.JSON;
        import mx.rpc.events.ResultEvent;
        
     //private var userrname:String;
     //private var passwrd:String;
     //private var dataArray:ArrayCollection;
     private var loginInfo:Array=new Array(2);
     private var report:String;
    
  private function acceptLogin():void{
   loginInfo[0]=username.text;
   loginInfo[1]=password.text;
   //errorReport();
   /*
   dataToCheck[0]=name;
   dataToCheck[1]=passwrd;
   sendPHPData();*/
   //var objSend:Object={userrname:username.text,passwrd:password.text};
   //objSend.login="true";
      //objSend.js;
      //sendData.send(objSend);
      sendPHPData();
  }
  
  private function sendPHPData():void{
      var objSend:Object=new Object();
      //var dataString:String=JSON.encode(dataArray.toArray());
      var dataString:String=JSON.encode(loginInfo);
      dataString=escape(dataString);
      
      //dataString=escape(dataString);
      //objSend.login="true";
      //objSend.getTutorials="true";
      objSend.js;
      sendData.send(objSend);
      //Info.text="send data to php succeed";
      Info.text=dataString;
  }
  /*
  private function getPHPData(event:ResultEvent):void{
   var rawArray:String;
   var rawData:String=String(event.result);
   rawArray=JSON.decode(rawData)as String;
  }*/
 private function cancell():void{
   username.text=null;
   password.text=null;
   Info.text="Please input name and password";
  }
  private function loginReport(event:ResultEvent):void{
   //Info.text=String(event.result);
   var backInfo:String=String(event.result);
   //backInfo=JSON.decode(backInfo) as String;
   Info.text=backInfo;
   if(backInfo=="login succeed"){//load Pabel
    
   }
   else if(backInfo=="login failed"){//Remind user
    //cancell();
   }
   else{}
  }
]]>
</mx:Script>

<mx:HTTPService id="sendData"
  url="http://localhost/loginJun.php"
  useProxy="false" method="GET"
  resultFormat="text" result="loginReport(event)">
  <mx:request xmlns="">
    <getTutorials>"true"</getTutorials>
  </mx:request>
</mx:HTTPService>
<mx:Panel x="307" y="30" width="300" height="100%" layout="absolute" title="登陆窗口" dropShadowEnabled="false" horiz>
  <mx:Text x="10" y="10" text="登陆身份"/>
  <mx:CheckBox x="70" y="49" label="管理员" width="57"/>
  <mx:CheckBox x="179" y="49" label="坐席"/>
<mx:Text x="10" y="98" text="身份认证"/>
  <mx:Label x="54" y="124" text="用户名:"/>
  <mx:Label x="54" y="150" text="密码:"/>
  <mx:TextInput x="119" y="122" width="121"  id="username"  editable="true"/>
  <mx:TextInput x="119" y="148" width="121" id="password"  editable="true"/>
  <mx:Button x="54" y="221" label="确定" id="confirm" click="acceptLogin()"/>
  <mx:Button x="192" y="221" label="取消" id="cancel" click="cancell()"/>
  <mx:Label x="10" y="270" id="Info"  width="230" height="20"/>
</mx:Panel>
<mx:Image x="10" y="30" source="@Embed('photo/testPic.JPG')"/>

</mx:Application>