我正在尝试在flex中创建一个登录屏幕,我通过amfphp发送变量,当我运行此查询时,我没有返回数据。
当我将值传递给amfphp的浏览器时,我可以看到返回一行。有人可以解释我做错了什么,请记住我是一个完全的菜鸟。
我遇到的错误是:
(对象)#0
message =“faultCode:INVALID_AMF_MESSAGE faultString:'无效的AMF消息'faultDetail:''行:1 '“
name =“错误”
rootCause =(null)
<?php
require('connection.php');
class NotWorking {
private $dbc;
public function __construct(){
$this->dbc = @mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME) OR DIE (mysqli_connect_error() );
}
public function no ($someVar) {
$data = array();
$password = mysqli_real_escape_string($this->dbc,trim($someVar['password']));
$email= mysqli_real_escape_string($this->dbc,trim($someVar['email']));
$query = "SELECT * FROM users WHERE email='$email' AND password='$password'";
$r= mysqli_query($this->dbc,$query);
/*
if($r){
echo ' query works ';
var_dump($r);
}else{
echo 'Does not work';
}
*/
$num = mysqli_num_rows($r);
echo "'Rows: $num'";
if ($num > 0 )
while ($row = mysqli_fetch_array($r) ){
$data[] = $row;
}
return $data;
}
}
答案 0 :(得分:0)
您应该做的第一件事是使用Charles Proxy调试流量。
我已经简要地看了一下你的代码,但有一件事突然出现在我的方法中你echo
字符串。 amfPHP不喜欢这个,因为它混淆了输出缓冲。如果删除echo
,则您的功能应该有效;这取决于您使用的amfPHP版本。