2016-04-06 50 views
1
$member_id=$_GET['id']; // Collecting data from query string 
if(!is_numeric($member_id)){ // Checking data it is a number or not 
    echo "Data Error"; 
    exit; 
} 
$handler = new PDO('mysql:host=localhost;dbname=manager', 'root', 'jordan31'); 
$count=$handler->prepare("select * from login, member_workouts where member_workouts.member_id=:member_id"); 
$count->bindParam(":member_id",$member_id,PDO::PARAM_INT,3); 
if($count->execute()) 
    $row = $count->fetch(PDO::FETCH_OBJ); 
if(! $row) 
    print('No Workouts Found'); 
else 
    echo "<tr bgcolor='#f1f1f1'><strong><p>Exercise:</strong> $row->exercise</p> 
     <strong><p>Weight:</strong> $row->weight</p> 
     <strong><p>Reps:</strong> $row->reps</p> 
     <strong><p>Sets:</strong> $row->sets</p> 
     <strong><p>notes:</strong> $row->notes</p> 
     <strong><p>Date:</strong> $row->date</p> 
     <a class='btn btn-success'><i class='fa fa-plus-square m-right-xs'> </i> View All</a>" 
     ?> 

試圖以顯示數據庫中的所有條目一個人的問題是我怎麼綁定連接表時,我嘗試關係表PDO查看所有

$count->bindParam(":member_id",$member_workouts.member_id,PDO::PARAM_INT,3); 

它不工作,就像我期望。

基本上,代碼應該基於他的member_id返回成員的所有鍛鍊我有它返回到數據庫的最新條目,但不是所有,它讓我難住!我努力在谷歌搜索中找到可以理解的信息。

我是相當新的PHP代碼,所以我正在學習。建設性的批評是值得歡迎的。

+0

1.你不需要加入這裏。從查詢中取出登錄名。 2.將fetch()更改爲[fetchAll()](https://phpdelusions.net/pdo#fetchall)。 3.按照鏈接學習PDO –

+0

我已經刪除登錄,現在當我將fetch更改爲fetchAll時,出現以下錯誤。 '注意:試圖獲得非對象的屬性' –

+0

你將不得不重複它的史蒂夫。使用循環。 – frz3993

回答

0

如果您的member_workouts中有一些字段是fk到login pk,請將條件添加到WHEREON。 例如LOGIN_ID & ID,使用這樣的查詢:

SELECT * 
FROM login 
JOIN member_workouts ON member_workouts.login_id = login.id --it is only example 
WHERE member_workouts.member_id=:member_id 

反正沒有連接條件你行的乘法。

0

我設法解決了下面的代碼通過拋出一個while循環似乎解決問題的問題。

<?Php 

$handler = new PDO('mysql:host=localhost;dbname=manager', 'root', ******); 
$count=$handler->prepare("SELECT * FROM member_workouts WHERE member_id=:member_id ORDER BY date DESC"); 
$count->bindParam(":member_id",$member_id,PDO::PARAM_INT,3); 

    if($count->execute()) 

    while($row = $count->fetch(PDO::FETCH_OBJ)) 


    if(! $row) 
print('<h4>No Workouts Found</h4>'); 


else 


echo "<tr bgcolor='#f1f1f1'><strong><p>Exercise:</strong> $row->exercise</p> 
     <strong><p>Weight:</strong> $row->weight</p> 
     <strong><p>Reps:</strong> $row->reps</p> 
     <strong><p>Sets:</strong> $row->sets</p> 
     <strong><p>notes:</strong> $row->notes</p> 
     <strong><p>Date:</strong> $row->date</p> 
     <hr>" 
     ?>