MySQL から特定のテーブル データを取得しようとしており、PHP を使用して情報を表示しています。データを取得して印刷するのは簡単なはずですが、データを取得して表示しようとしたときにのみ、未定義のインデックスが表示されます。
情報を取得し、ヘッダーのユーザー名に従ってプロファイル ページに情報を表示しています。
if(isset($_GET['username']))
{
$username = $_GET['username'];
$profile_uid = $Wall->useriD($username);
$profile_details = $Wall->userDetails($profile_uid);
$friend_count = $profile_details['friendcount']; //issue here
} else {
header('Location:404.php');
}
$friend_count = $profile_details['friendcount']; で未定義のインデックスを取得します。理由はわかりませんが、すべてが正しくチェックされていると信じていましたが、明らかにそうではありませんでした。これが私が情報を取得する方法です。
public function useriD($username)
{
$sth = $this->db->prepare("SELECT uiD FROM users WHERE username = :username AND status='1'");
$sth->execute(array(':username' => $username));
if($sth->rowCount() == 1)
{
$row = $sth->fetch();
return $row['uiD'];
} else {
return false;
}
}
public function userDetails($uiD)
{
$sth = $this->db->prepare("SELECT * FROM users WHERE uiD = :uiD AND status='1'");
$sth->execute(array(':uiD' => $uiD));
$data = $sth->fetchAll();
return $data;
}
問題は、そのような情報を表示しようとすると、数時間そこにいて、立ち往生していることです。どんなリードも素晴らしいでしょう。