2016-04-06 23 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>" 
     ?>