2013-10-07 2 views
0

На моей странице у меня есть таблица, и я вставляю в нее данные из моей БД с PHP. В каждой строке таблицы есть ссылки. Каждая ссылка направляет пользователя на соответствующую страницу. Но эти страницы похожи на точную копию друг друга с небольшой разницей. Слово.Данные POST в URL-адресе

Теперь это глупо, чтобы создать кучу страниц для каждой ссылки. Затем измените в них только одно слово. Вместо этого я хочу создать одну страницу. Отправьте данные с главной страницы (в url) и получите данные (с url?) На целевой странице и делайте что-нибудь. Ну, я должен просто показать код:

<td class="align-left"> 
    <a href="artist.php?artist=<?php echo $row['Link'] ?>"><?php echo $row['Name'] ?></a> 
</td> 

Это строка, о которой я говорю. Это происходит через БД, а $row['Link'] изменяет каждую итерацию. Сгенерированный код будет выглядеть следующим образом:

<td class="align-left"> 
    <a href="artist.php?artist=3doorsdown">3 Doors Down</a> 
</td> 

artist.php страница содержит этот код в верхней части:

<?php include('vars/3doorsdown.php'); ?> 

Эта 3doorsdown.php страница содержит некоторые переменные, которые будут использоваться на странице. То, что я хочу сделать, это получить 3doorsdown с URL (artist.php?artist=3doorsdown) и поместить его на целевую страницу. Пример:

<?php 
    $postData = /*parse url and get data */; 
    include('vars/' .$postData. '.php'); 
?> 

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

+3

'$ PostData = $ _GET [ 'группа'];' –

+0

выше комментарий является правильным. Будьте осторожны, чтобы не путать данные GET и POST. Данные GET видны в URL-адресе и подходят при загрузке веб-страницы, которая ничего не изменит. Данные POST обычно предназначены для сценариев создания/обновления/удаления и не отправляются в URL-адрес. –

ответ

1

Если ваша форма на вашей странице используется method="get", а затем использовать $_GET['variable'] для доступа к значениям строки запроса.

<?php 
    $artist = $_GET['artist']; 
    echo $artist; 
?> 

Если вы используете method="post", то вы бы с помощью $_POST['artist'];

0

Вы можете получить это значение из массива $_GET. Проверьте, существует ли файл первым, а затем включите его.

$file = 'vars/' .$_GET['artist']. '.php'; 

if (file_exists($file)) { 
    include $file; 
}