PHP: Как я могу сохранить и использовать параметры ссылки

#php #forms

#php #формы

Вопрос:

В настоящее время я пытаюсь разработать базовую форму направления. Процесс выглядит следующим образом:

  1. Реферер будет использовать форму для отправки электронного письма своим друзьям. (Пример: http://www.graphicgoldfish.com/refer.html ) Как вы можете видеть, форма требует их имени пользователя и их IGN (внутриигровое имя). Это очень важно.

  2. Ссылка генерируется с использованием информации о реферере в качестве параметров. Параметры будут использоваться для вознаграждения реферера, как только друг заполнит вторую форму. (Пример: http://www.graphicgoldfish.com/referral.html?ref_username=LRRoberts0122amp;ref_ign=DerpyGoldfish )

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

Как я могу сохранить эти параметры после отправки?

Мой PHP:

 <?php
echo $_GET['ref_username'];
echo $_GET['ref_ign'];

if (isset($_GET['ref_username'])) {
$r_username = $_GET['ref_username'];
}

if (isset($_GET['ref_ign'])) {
    $r_ign = $_GET['ref_ign'];
}
  

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

РЕДАКТИРОВАТЬ: параметры передаются в HTML-файл из сгенерированной ссылки. Другу необходимо заполнить форму. Как я могу получить значения, которые были переданы в параметрах в HTML-файл, и объединить их с действием (где оно отправляется в файл PHP)?

Это не работает для меня.

 <form action="http://www.graphicgoldfish.com/php/referral.php?ref_username=<?php echo $ref_username ?>amp;ref_ign=<?php echo $ref_ign?>" method="POST">
  

Комментарии:

1. Вы можете поместить свои переменные get в действие вашей формы, например <form action="somefile.php?get_variables=here" method="post">

2. вариант 1. поместите их в форму (скрытые элементы или действие) 2. используйте сеанс

Ответ №1:

Во-первых off…in ваш generator.php форма. Вы используете POST, а не GET

Итак, вы должны повторно использовать свои переменные как таковые.

 if (isset($_POST['ref_username'])) {
  $r_username = $_POST['ref_username'];
}

if (isset($_POST['ref_ign'])) {
   $r_ign = $_POST['ref_ign'];
}
  

Во-вторых, когда вы создаете эту ссылку с параметрами в ней. Вы передаете параметры в HTML-файл.

  http://www.graphicgoldfish.com/referral.html?ref_username=LRRoberts0122amp;ref_ign=DerpyGoldfish
  

Вам нужно передать их в файл php, чтобы это работало…

 http://www.graphicgoldfish.com/referral.php?ref_username=LRRoberts0122amp;ref_ign=DerpyGoldfish
  

Комментарии:

1. Означает ли это, что я должен поместить свой HTML-файл в PHP-файл? Потому что это будет для веб-сайта, который использует Enjin. И у меня нет доступа к такому фактическому файлу. 🙁 Есть ли какой-либо другой способ сделать это?

2. расширения файлов не всегда соответствуют типу файла.

3. Я должен заставить URL перейти на определенную HTML-страницу. Можно ли встроить PHP для захвата переменных, а затем отправить их при отправке второй формы?

4. если страница «html» не анализирует php, то нет.

5. Хорошо, так что да. Параметры передаются в HTML-файл. Другу необходимо заполнить форму. Как я могу получить значения, которые были переданы в параметрах в HTML-файл, и объединить их с действием (где оно отправляется в файл PHP)?