Сохранить ввод формы PHP на веб-страницу

Я пытаюсь спасти input из PHP Форма на странице действий.

Так, например, форма на /world/play/create/create.php и подчинение приводит к /world/play/create/index.php?id=(6DIGIT#) ввод имени пользователя из первого URL-адреса будет отражен в действии и сохранен на странице, чтобы любой пользователь мог вернуться и увидеть его.

Однако, когда я запускаю этот код (ниже), он отображает имя пользователя на вкладке, которая отправила форму, но другие пользователи, которые переходят по ссылке, не могут видеть это имя пользователя, когда присоединяются; каждый человек может видеть только свое имя пользователя.

Я пытаюсь сделать так, чтобы каждый человек мог видеть свой вклад И всех остальных, но сейчас он показывает только свой.

На данный момент это то, что я до сих пор:

URL:

/world/play/create/index.php?id=M12345 

Форма (по первой ссылке):

<form id="access" method="post" action="/world/play/create/index.php?id=" onsubmit="this.action=this.action.split('#')[0]+'M'+(Math.floor(Math.random()*(75800-39408))+30938);phpValue();">
<input autocomplete="off" type="text" name="nameP1" id="unm" placeholder="Username" value="<?php echo $nameP1;?>">
<br>
<div style="line-height:10px">&nbsp;</div>
<input type="submit" value="CONTINUE" onclick="return checkInput()">
</form>

PHP (по второй ссылке):

    <?php
$nameErr = "";
$nameP1 = "";$nameP2 = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  if (empty($_POST["nameP1"])) {
    $nameErr = "Name is required";
  } else {
    $nameP1 = test_input($_POST["nameP1"]);
    // check if name only contains letters and whitespace
    if (!preg_match("/^[a-zA-Z ]*$/",$nameP1)) {
      $nameErr = "Only letters and white space allowed"; 
    }
  }
}

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  if (empty($_POST["nameP2"])) {
    $nameErr = "Name is required";
  } else {
    $nameP2 = test_input($_POST["nameP2"]);
    // check if name only contains letters and whitespace
    if (!preg_match("/^[a-zA-Z ]*$/",$nameP2)) {
      $nameErr = "Only letters and white space allowed"; 
    }
  }
}

function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>

И, наконец, эхо PHP (по второй ссылке):

 <span id="playerName"><?php echo $nameP1; ?></span>&nbsp;

1 ответ

Если вы хотите сохранить переменные в URL, вам следует изменить метод формы на GET вместо POST. Измените переменную $_POST в своем коде во втором php-файле на $_GET.

Дополнительная информация: http://php.net/manual/en/tutorial.forms.php

Другие вопросы по тегам