Перенаправление на другую страницу при использовании одного и того же HTML шаблона / файла? - PullRequest
0 голосов
/ 02 мая 2020

У меня есть список игроков, я покажу пример, чтобы дать основную c идею:

<div>
  <ul id="playerNames">
      <li><b>Harden</b></li>
      <li><b>Giannis</b></li>
      <li><b>Lebron</b></li>
      <li><b>Booker</b></li>
      <li><b>Lavine</b></li>
      <li><b>Westbrook</b></li>
      <li><b>Jokic</b></li>
  </ul>
</div>

Что я хотел бы сделать, это создать разные URL для каждого игрока, поэтому что при нажатии пользователь будет перенаправлен на новую страницу, где я буду отображать такую ​​информацию, как статистика игрока, графики выстрелов, биография и т. д. c. Есть ли способ для меня иметь один HTML файл / шаблон для обработки всех этих (~ 500) проигрывателей? Каждая страница будет по сути одинаковой по структуре, все, что изменится, это фактические числа и отображаемые изображения, которые я сохранил в csvs и других местах, в которые я хотел бы загрузить.

Пример строки csv (имена столбцов здесь не показаны) Это только здесь, если кто-то по какой-либо причине не знает, что такое CSV:

203932,Aaron Gordon,1610612753,ORL,24.0,58,28,30,0.483,1913.7333333333333,314,726,0.433,68,226,0.301,137,203,0.675,103,338,441,215,94,50,36,41,116,188,833,-96,1848.7,19,1,117,140,392,242,41,77,64,273,141,108,320,75,58,352,41,28,26,62,85,106,77,448,372,52,83,420,52,28,16,5,"203932,1610612753"

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

В любом случае, это сводится ко мне, пытаясь избежать создания 500+ html файлов, которые все будут выглядеть почти идентичными. Если у кого-то есть решение для этого, я весь в ушах.

Ответы [ 2 ]

0 голосов
/ 03 мая 2020

Как сказал skobalji c, добавление "?=playerid" к URL является (на мой взгляд) лучшим решением здесь. Строки запроса делают это довольно простой задачей. Мое решение этого было следующее:

В PHP при создании списка, добавить ссылку, содержащую идентификатор игрока в URL, используя строку запроса:

<a href='nba_player_stats_page.html?player=" . $ids[0] . "'>"

Затем, в отдельный файл PHP, захватите URL страницы, затем снимите идентификатор, соответствующий идентификатору игрока, на которого нажали:

$url = $_SERVER['HTTP_REFERER'];
$id = substr($url, strpos($url, "=") + 1);

Наконец, просто используйте ajax для загрузки в php file:

$.ajax({
  url:'nba_player_stats.php',
  method: 'GET',
  success:function(res){
    $('#playerStats').html(res)
    // $('#playerNames').replaceWith(res);
  }
})

Эта базовая c структура должна помочь любому с подобным вопросом.

0 голосов
/ 02 мая 2020

Если вы хотите, чтобы вся информация об игроке находилась на одной странице в отдельном файле. html, то вы можете обернуть теги <b>PlayerName</b> тегом <a> следующим образом: <a href="playerInfo.html"><b>PlayerName</b></a> playerInfo. html - это страница, на которой отображается вся информация об игроке. Затем добавьте идентификатор к элементу HTML с информацией об этом игроке, чтобы ссылка автоматически прокручивала страницу до элемента с таким идентификатором:

index. html:

<a href="playerInfo.html#Harden"><b>Harden</b></a>

playInfo. html:

<div id="Harden">
 PLAYER INFO HTML
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...