2015-05-15 107 views
0

我创建登录在angularjs,在login.phppage我验证用户存在与否的行数存在或不是意味着使用rowCount()在PHP Pdo但它总是返回0结果。这里是我的PHP文件:PHP查询执行没有错误,但返回计数0

<?php 
    /* 
    * Collect all Details from Angular HTTP Request. 
    */ 
    $postdata = file_get_contents("php://input"); 
    $request = json_decode($postdata); 
    $email = $request->email; 
    $pass = $request->password; 



    $user ="root"; 
$pass ="m2n1shlko"; 

$dbh = new PDO('mysql:host=localhost;dbname=blog_db', $user, $pass); 

$query = $dbh->prepare("SELECT * FROM `signup_tbl` WHERE `email`='$email' AND `password`='$pass'"); 
$query->execute(); 
$count = $query->rowcount(); 
if($count>0){ 

echo "You have sucessfully login with this Email: ".$count; //this will go back under "data" of angular call. 

}else{ 


    echo "Error While Authentication with this Email: " .$count; 
} 


    /* 
    * You can use $email and $pass for further work. Such as Database calls. 
    */  
?> 

从控制器到这里,我不知道我在哪里丢失的代码数据。 Apreciate如果帮助..谢谢

+0

这是什么$ count = $ query-> filepro_rowcount(oid)();在你的代码? – Saty

+0

检查一次您的查询。 – RaMeSh

+0

运行它,我测试了MySQL的控制台 –

回答

0

它的$query->rowCount();不$query->rowcount();

$count = $query->rowCount(); 
if($count>0){ 
echo "You have sucessfully login with this Email: ".$count; //this will go back under "data" of angular call. 
}else{ 
echo "Error While Authentication with this Email: " .$count; 
} 

阅读手册rowCount

+0

不知道为什么我为此投票! – Saty

1

你覆盖$pass数据库(第13行)和用户(第8行)。将数据库密码更改为$db_pass

... 
$email = '...'; 
$pass = $request->password; 
... 
$db_pass = '...'; 
... 
$dbh = new PDO('mysql:host=localhost;dbname=blog_db', $user, $db_pass); // $pass to $db_pass 
+0

上现在更改变IM上无法加载资源控制台 收到错误后:服务器回应500(内部服务器错误)的状态 –

+0

@RahulSaxena:你确定你改变了它两次?在数据库声明(第13行)和第15行中? – panther

+0

它的决心先生..感谢它的一个愚蠢的错误,因为你告诉我变量覆盖 –

0

我在本地系统中完成的,它的工作好,尝试像下面的例子,这是工作紫霞遵循这个例子,做你的代码正确的方式:

<?php 
$host = "localhost"; 
$username = "root"; 
$password = ""; 
$dbname = "xxx"; 
// Create connection 
$conn = new PDO('mysql:host=localhost;dbname=xxx', $username, $password); 

$query =$conn->prepare("select * from testing"); 
$query->execute(); 
$count = $query->rowCount(); 
echo "Counting:".$count; 
?> 

输出: -

Counting:3