Member 14910719 Ответов: 0

Как отобразить данные из api в HTML с помощью PHP?


Эй, так что я учусь работать с API и PHP просто для удовольствия.
У меня есть небольшое веб-приложение, использующее HTML, PHP и MAMP.

У меня есть футбольные данные, отображаемые в таблице на странице под названием "liveScores.php-с уникальным идентификатором для каждой игры. Когда я нажимаю на эту ссылку, она открывает новую страницу ("gameInfo.php") где я хотел бы углубиться в API для этой игры. Однако это не работает. Он работает только тогда, когда я жестко кодирую идентификатор, но, конечно, это пустая трата времени, так как идентификаторы для каждой игры меняются. Идентификатор правильно передается через мой url-адрес, но я просто не знаю, как извлечь из него данные.

*ОБНОВЛЕНИЕ

Когда я нажимаю на ссылку идентификатора, он направляет меня на новую страницу. Но данные не отображаются.
Это просто пустая таблица, в которой отображаются только имена столбцов.
Когда я прогоняю его через почтальона, это то же самое.
Жестко Закодируйте идентификатор, и я получу данные в обоих случаях.


1. Мой метод

===============

   public function getMatchInfo() {

    $url = $this->buildUrl('scores/events.json?
            key=Ka88B6jZrxO8dDQt&secret=L233yXpNCWQDZyxJIGSkNbjeI8nWLdqw&id='
            .$id);
    return $this->makeRequest($url);
}


2. Мой HTML-код для экрана GameData

=================

<?php foreach ($data['data']['event'] as $_event){ ?>
                        <tr>

                            <td style="text-align: center;"><?= $_event['id'] ?></td>
                            <td style="text-align: center;"><?= $_event['player'] ?></td>

                            </tr>

                        <?php } ?>
                        <tr>


3. Сам API

========================

{
    "success": true,
    "data": {
        "event": [
            {
                "id": "10509914",
                "match_id": "129180",
                "player": "DEENEY TROY",
                "time": "5",
                "event": "GOAL",
                "sort": "0",
                "home_away": "h"
            },
            {
                "id": "10509915",
                "match_id": "129180",
                "player": "MARIAPPA ADRIAN",
                "time": "13",
                "event": "YELLOW_CARD",
                "sort": "1",
                "home_away": "h"
            },


Что я уже пробовал:

Если я жестко закодирую идентификатор, он прекрасно работает для этой конкретной строки данных. Поэтому я предполагаю, что моя проблема заключается в экране "GameInfo", поскольку, хотя идентификатор есть в URL-адресе, он не может вытащить правильную информацию.

Garth J Lancaster

Я не думаю, что вы показали нам соответствующие части, из которых мы можем вам помочь - например, то, что работает после того, как вы нажмете ссылку "чтобы добраться до" gameInfo.php ... вы были бы правы, предположив, что где-то на этом пути идентификатор игры/Ссылки, на которую вы нажали, должен быть передан в/получен gameInfo, чтобы затем он мог получить дополнительные сведения из JSON и отобразить их ... но без соответствующего мужества мы еще более слепы, чем вы ... Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.

Member 14910719

Эй, когда я нажимаю на ссылку идентификатора, он направляет меня на новую страницу. Но данные не отображаются.
Это просто пустая таблица, в которой отображаются только имена столбцов.
Когда я прогоняю его через почтальона, это то же самое.
Жестко Закодируйте идентификатор, и я получу данные в обоих случаях.

Richard MacCutchan

Каково значение $id при отправке URL-адреса в API?

Member 14910719

Я передаю удостоверение личности, показанное в моем вопросе, 129180. Я не получаю никаких данных, когда подаю в суд на свой текущий код, но когда я хардкорю идентификатор, я получаю все данные.

Richard MacCutchan

Ну, единственный способ узнать, что происходит, - это использовать отладчик и исследовать все, как вы шагаете через код.

Member 14910719

Я не знаю, как отлаживать php, так как я новичок в нем. Я также использую редактор, а не IDE

Richard MacCutchan

К сожалению, мы не можем помочь вам в этом, это все часть обучения и приобретения опыта.

Member 14910719

Не беспокойтесь. На самом деле я решил ее за это время. Я открыл журналы и увидел, что мне не хватает некоторых скобок. Смущающий.

0 Ответов