2013-02-24 23 views
-4

如何在類之外訪問$ pos var?所以我可以在我的索引中使用它:echo $ pos我也在我的索引中包含了這個類。在我的索引中,在一個類之外使用var PHP

public function CheckProfile(){ 

    $get = $this->db->query("SELECT positive, posts FROM users WHERE user='". $_SESSION['user'] ."'"); 

    while($row = $get->fetch(PDO::FETCH_ASSOC)) 
     { 
      return $pos = $row['post']; 
     } 

    } 
+1

在while循環中使用'return'不會做任何你認爲它將要做的事情。你究竟想用這個代碼來完成什麼? – geoffspear 2013-02-24 15:03:06

+0

您可以使用方法的返回值。但是可能你正在訪問錯誤的結果列;不應該是'職位'而不是'職位'? – mario 2013-02-24 15:03:37

+0

你期望只有一行還是多行?該'return'在'while'循環不會做出很大的意義 - 以這種方式while循環將只運行一次,如果在所有.... – Havelock 2013-02-24 15:04:05

回答

0

正如大家告訴你的,代碼中有很多錯誤的事情正在進行。你應該學習如何更好地使用類和對象。不管怎麼說,這裏的東西入手:

假設你有一個類,讓我們定義一個公共方法:

public function CheckProfile($user) { 

    $ret = false; 

    $stmt = $this->db->prepare("SELECT positive, posts FROM users WHERE user = :user"); 
    $stmt->bindParam(':user', $user, PDO::PARAM_STR); 

    if ($stmt->execute()) { 
     $ret = $stmt->fetchAll(PDO::FETCH_ASSOC); 
    } 

    return $ret; 
} 


然後,從你的PHP文件,使用這樣的:

$UserData = $YourClassInstance->CheckProfile($_SESSION['user']); 
if ($UserData === false) { 
    echo 'Something went wrong...'; 
} else { 
    print_r($UserData); 
} 

從此開始,嘗試完成您真正需要的東西。

相關問題