PHP - MySQL查询不起作用

时间:2009-05-27 08:55:53

标签: php mysql flex

<mx:RemoteObject id="zendAMF" destination="zend" showBusyCursor="true" source="test_class" >
<mx:method name="doLogin" result="onSayHelloResult(event)">
        <mx:arguments>
            <username>
                {username.text}
            </username>
            <password>
                {password.text}
            </password>
        </mx:arguments>
    </mx:method>
</mx:RemoteObject>

这是我的Flex代码,我没有使用POST ....

 

我不确定我是否正确,我总是得到返回值没有,但我输入正确的用户名和密码。

任何人都可以帮助我。

7 个答案:

答案 0 :(得分:3)

if(isset($ _ POST ['username'])&amp;&amp; isset($ _ POST ['password']))

这是决定你是否得到的线。 这意味着你不使用post来从表单中获取变量。

它与查询无关。

答案 1 :(得分:2)

这似乎是一个HTML问题而不是查询问题,因为唯一可以让这个类返回'no'的是你的$ _POST变量。

希望表单的基础知识在HTML中看起来像这样:

<form method='post' action='filename.php'>
<input type='text' name='username' /><br />
<input type='password' name='password' />
</form>

答案 2 :(得分:0)

你确定你没有存储密码哈希吗?

另外,不要使用这个丑陋的函数,使用绑定参数。它更清洁,更好。

<强>更新

只要下列条件失败,就会返回

no

if (isset($_POST['username']) && isset($_POST['password']))

,无论MySQL中发生了什么。

检查是否设置了两个变量。

答案 3 :(得分:0)

这一位:

$result = mysql_fetch_array(mysql_query($query));
return 'yes';

只要返回,无论$result变量是什么,请尝试

if(empty($result)){
 return 'no'
}else{
return 'yes'
}

答案 4 :(得分:0)

如果您收到“否”,因为此代码无法返回true:

if (isset($_POST['username']) && isset($_POST['password']))

那么......你给输入字段指的是那些确切的名字吗?表格真的被张贴了吗?

答案 5 :(得分:0)

如果你提供了用户名和密码,你的函数doLogin()会返回'yes',无论数据库说什么......

答案 6 :(得分:0)

你应该写一行

 $result = mysql_fetch_array(mysql_query($query));

作为

 $res = mysql_query($query);
 if (!$res) {
     die "doLogin: " . mysql_error();
 }
 $user = mysql_fetch_array($res);

至少在测试此代码时。这样,您可以查看数据库调用中是否存在错误。