-2

显示表格中的数据时遇到一点麻烦。过去几个小时一直在查看我的代码,但似乎看不到问题所在。我想要做的是,当一个团队被点击时,它将进入球员表并在球队页面上显示任何具有该球队名称的球员。我不断得到一个空白页:

索引.php

这是启动 team_view.php 的情况

case 'view_team':

        $team = $_GET['name'];
        $teams = get_players_by_team($team);
        include('team_view.php');
        break;

team_view.php

<?php include '../../view/header.php'; ?>
<?php include '../../view/sidebar_admin.php'; ?>
<div id="content">
    <h1>Team Roster</h1>

    <!-- display product -->
    <?php include '../../view/team.php'; ?>

    <!-- display buttons -->

</div>
<?php include '../../view/footer.php'; ?>

团队.php

<?php

    $team = $team['name'];  
    $first = $player['first'];
    $last = $player['last'];
    $age = $player['age'];
    $position = $player['position'];
    $team = $player['team'];

?>

<table>
    <?php foreach ($players as $player) :

    ?>
        <tr>

            <td id="product_image_column" >
                <img src="images/<?php echo $player['player_id']; ?>_s.png"
                     alt="&nbsp;">
            </td>
            <td>
                <p>
                    <a href="?action=view_player&amp;player_id=<?php echo
                           $player['player_id']; ?>">
                        <?php echo $player['first']; ?>
                        <?php echo $player['last']; ?>
                    </a>
                </p>

            </td>
        </tr>
    <?php endforeach; ?>
    </table>

product_db.php

<?php
function get_players_by_team($team) {
   global $db;
    $query = 'SELECT * FROM players
              WHERE team = :team';
    try {
        $statement = $db->prepare($query);
        $statement->bindValue(':team', $team);
        $statement->execute();
        $result = $statement->fetch();
        $statement->closeCursor();
        return $result;
    } catch (PDOException $e) {
        display_db_error($e->getMessage());
    }
}
4

1 回答 1

0

您永远不会定义$players它看起来像您期望的那样$players实际上是$teams.

$teams = get_players_by_team($team);

此外,您$player在脚本顶部使用而不是在循环内部使用,这是没有意义的。

于 2013-06-03T20:06:01.367 回答