2016-11-23 35 views
0

我是新来的数据库和PHP,我需要创建一个第三规范化的数据库和网站,将允许用户搜索一个足球队或一个位置,它会显示足球团队在一个超链接列表,将带他们到一个详细信息页面,将显示该团队的信息,我努力与我的数据库和我的查询检索到所需的所有数据到PHP页面上(使用PDO),这是我目前的数据库: database我正在努力与我的数据库和查询

我在想,如果我能得到任何帮助,使数据库更好,我一直在调整它才能正常工作,但仍然没有运气,我的查询是:

//preparing the statement 
$statementteam = $handler->prepare(" 
    SELECT `team`.`team_id`, `team`.*, `stadium`.*, `kit_colours`.*, /*`players`.* */ 
    FROM `team` 
    LEFT JOIN `kit_colours` ON `team`.`kit_id` = `kit_colours`.`kit_id` 
    LEFT JOIN `stadium` ON `team`.`stadium_id` = `stadium`.`stadium_id` 
    /*LEFT JOIN `players` ON `team`.`team_id` = `players`.`_id`*/ 
    WHERE team_id= {$_GET['team_id']}"); 

//execute statement 
$statementteam->execute(); 

,你可以看到我已经注释掉这个查询的部分,如果我离开它注释掉,我得到这个错误:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'team_id' in where clause is ambiguous' in G:\xampp\htdocs\CIT2318\Assignment\details.php:99 Stack trace: #0 G:\xampp\htdocs\CIT2318\Assignment\details.php(99): PDOStatement->execute() #1 {main} thrown in G:\xampp\htdocs\CIT2318\Assignment\details.php on line 99

任何帮助,将不胜感激

回答

0

没有必要选择team.team_idteam.* - 这会导致出现两列team.team_id,导致您遇到的问题。

+1

事实上,通过'tblName。* – Drew