2016-03-31 65 views
0

所以我是一个PHP新手创建我的第一个Android应用程序。我使用volley library将参数传递给php和json,但是我无法得到这个php脚本(我一直在用邮差测试它,因为我还没有开始这个活动。)获取这些信息的正确方法是什么?

<?php 
    require_once 'connection.php'; 
    header('Content-Type: application/json '); 

    class produtos { 
     private $db; 
     private $connection; 

     function __construct(){ 
      $this->db = new DB_Connection(); 
      $this->connection = $this->db->get_connection();    
     } //__construct 

     function returnProducts($parameter) { 
      if ($parameter != 'Todos')  
       $query = "SELECT * FROM produtos WHERE pdstatus = '$parameter'"; 
       else if ($parameter == 'Todos') 
       $query = "SELECT * FROM produtos"; 
      $result = mysqli_query($this->connection,$query); 

      if (!mysqli_num_rows($result)) 
       echo json_encode("Nenhum resultado encontrado."); 
      else { 
       while($res = mysqli_fetch_assoc($result)){ //transforma em array os resultados da query 
        $data[] = $res;   
       } //while 
       echo json_encode(array("products"=>$data)); 
      } //else 
     } //function 
    } //produtos 

    $product = new Produtos(); 
    $parameter = array("status"=>$_POST['pdstatus']); 
    $product -> returnProducts($parameter); 
?> 

我意识到它有什么问题(试图在我的SELECT查询中使用$参数),但我只是不知道如何解决它。已经尝试了几个方法来访问这个变量,它不工作...请帮助!

+0

正确的方法是参数装箱 – madalinivascu

回答

1

您应该使用$ name_of_array ['value']来访问数组值。使用这个:

if ($parameter["status"] !== 'Todos')  
    $query = "SELECT * FROM produtos WHERE pdstatus = '".$parameter['status']."'"; 

并且在$参数存在的所有地方都做同样的事情。

+0

哦,所以这就是发生在那里...谢谢,这工作! – MuriloRM

相关问题