Flex 4不发送POST数据到php文件

问题描述:

试图在php 4中设置一个简单的登录脚本。Flex 4不发送POST数据到php文件

在挠我使用的HTTPService:

<s:HTTPService id="userRequest" result="checkLogin(event)" url="http://localhost/myPHPfile.php" useProxy="false" method="POST">` 
    <mx:request xmlns=""> 
     <username>{username.text}</username> 
     <password>{password.text}</password> 
    </mx:request> 
</s:HTTPService> 

一种形式发送数据:

<mx:Form id="loginForm" backgroundColor="0x000000" color="0xFFFFFF"> 
    <mx:FormItem label="Username :"> 
     <s:TextInput id="username" color="#000000"/> 
    </mx:FormItem> 
    <mx:FormItem label="Password :"> 
     <s:TextInput displayAsPassword="true" id="password" color="#000000"/> 
    </mx:FormItem> 
    <mx:FormItem direction="horizontal"> 
     <s:Button label="Send" click="send_data()" color="white"/> 
     <s:Button label="Cancel" click="currentState = 'State1'" color="white"/> 
    </mx:FormItem> 
</mx:Form> 

和发送脚本: 私有函数SEND_DATA():无效userRequest.send(); }

很肯定我的PHP是确定的,这里是代码抓住POST数据:

$username = mysqli_real_escape_string($_POST["username"]); 
$password = mysqli_real_escape_string($_POST["password"]); 

这些阀在PHP($ username和$ password)回来为空值。我的FLex 4脚本没有发送POST数据appropriatley有什么问题?谢谢!!!

让我知道你是否需要更多信息。

AHHHHH想通了!

它实际上是我的mysql代码。取而代之的

mysqli_real_escape_string($_POST["username"]); 

它需要的是

mysql_real_escape_string($_POST["username"]); 

取消了 “我” 在结束mysql。奇怪的是如何与PHP唯一的脚本工作,但通过Flex它does not。好吧。

<mx:request xmlns=""> 
      <username>{username.text}</username> 
      <password>{password.text}</password> 
     </mx:request> 

用户名和密码将被分配在初始化。 你必须重新设置参数。

变化发送scrtip作为

private function send_data():void 
{ 
    var params:Object = {}; 
    params["username"] = username.text; 
     params["password"] = password.text; 
    userRequest.send(params); 


} 
+0

非常感谢你的回复,你说的话有道理。但是,即使将其输入到我的发送脚本后,结果也是如此。任何想法为什么? (仅供参考,你把params [“用户名”]放两次,我解决了这个问题。) – sanders4069 2011-04-03 17:34:56

$username = $_POST["username"]; 
$password = $_POST["password"]; 

好的,为我工作。