Я собираюсь вызвать одну страницу PHP (ModifyUsers.php
) из другого (RumpUserAdministration.php
). Я пытаюсь вызвать его как отдельную страницу, а не как подраздел страницы администрирования пользователей, и передать значение userID
, используя POST от RumpUserAdministration.php
до ModifyUsers.php
.Пытаться вызвать другую страницу PHP Используя POST
Я добавил alert
заявление, которые показывают, что userID
хранятся в hidden-id-field
непосредственно перед созывом страницы пользователей могут изменять, и, таким образом, доступный для постинга, но он не транспортируется на страницу Пользователей Modify.
У меня также есть alert
добавленные операторы, указывающие, какой метод запроса сервера используется в тех точках выполнения страницы. Другие кнопки, присутствующие на моей странице, также должны будут вызвать другие страницы.
Мой вопрос заключается в следующем: как я могу вызвать страницу Модифицировать пользователей с помощью POST, чтобы я мог передавать свое значение с помощью POST?
Я могу использовать как переменные GET, так и SESSION, но этот конкретный сценарий сосредоточен на переменных POST - GET и SESSION, которые не должны использоваться.
Я проконсультировался со своими сокурсниками и всеми моими преподавателями в связи с этой проблемой, а также проехал через более 20 разных сайтов и несколько поисков в поисках решения. Ни одно из предложенных «решений» не оказалось эффективным - люди теперь так же распущены, как я, и на веб-страницах использовались методы, которые были пригодны только для обновления исходной страницы, вместо того, чтобы вызвать новую или просто неправильно.
Ниже перечислены файлы, которые я использовал для этой проблемы.
RumpUserAdministration.php
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport"
content = "width=device-width, initial-scale=1.0"
>
<meta charset = "utf-8">
<link href = "CSS/RumpIntranetProject.css"
rel = "stylesheet"
type = "text/css"
>
</head>
<body>
<?php
echo "<script>alert(\"" . $_SERVER[ "REQUEST_METHOD" ] . "\")</script>";
?>
<form id = "entire-page"
action = "RumpUserAdministration.php"
method = "post"
>
<div id = "user-name-list-section">
<div id = "user-name-list">
<div id = "ID15"
class = "list-item row"
name = "ID15"
onclick = "userNameListItemClicked('15')"
>
SAMPLE USER 001
</div>
<div id = "ID16"
class = "list-item row"
name = "ID16"
onclick = "userNameListItemClicked('16')"
>
SAMPLE USER 002
</div>
</div>
</div>
<input id = "user-administration-button-delete"
name = "delete-submit"
onclick = "loadDeleteUsers()"
type = "submit"
value = "Delete"
>
<input id = "user-administration-button-modify"
name = "modify-submit"
onclick = "loadModifyUsers()"
type = "submit"
value = "Modify"
>
<input id = 'hidden-id-field'
name = 'userID'
type = 'hidden'
value = ''
>
</form>
<?php
if ($_SERVER[ "REQUEST_METHOD" ] == "POST")
{
if (isset($_POST[ 'modify-submit' ]))
{
echo "<script>document.getElementById('hidden-id-field').value = \"" . $_POST[ 'userID' ] . "\"</script>";
echo "<script>alert(\"hidden-id-field (userID) : \" + document.getElementById('hidden-id-field').value)</script>";
echo "<script>alert(\"" . $_SERVER[ "REQUEST_METHOD" ] . "\")</script>";
echo '<script>window.location = "ModifyUsers.php"</script>';
}
else
{
echo "<script>alert('Unexpected Administration POST encountered.')</script>";
}
}
?>
<script>
var existingSelection = null;
function loadModifyUsers()
{
document.getElementById('hidden-id-field').value = existingSelection;
alert("Presubmit");
document.getElementById('entire-page').submit;
}
function userNameListItemClicked(userID)
{
existingSelection = 'ID' + userID;
document.getElementById("user-administration-button-modify").style.cursor = "pointer";
document.getElementById("user-administration-button-modify").disabled = false;
}
</script>
</body>
</html>
ModifyUsers.php
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport"
content = "width=device-width, initial-scale=1.0"
>
<meta charset = "utf-8">
<link href = "CSS/RumpIntranetProject.css"
rel = "stylesheet"
type = "text/css"
>
</head>
<body>
<?php
echo "<script>alert('In further')</script>";
echo "<script>alert(\"hidden-id-field (userID) : \" + document.getElementById('hidden-id-field').value)</script>";
echo "<script>alert(\"userID : \" + \"" . $_POST[ 'userID' ] . "\")</script>";
?>
</body>
</html>
RumpIntranetProject.css
html,
*
{
border : 0;
box-sizing : border-box;
margin : 0;
padding : 0;
}
.list-item
{
display : block;
}
.list-item:hover
{
background-color : #00ffff;
}
.row:after
{
clear : both;
content : "";
display : block;
}
#user-name-list
{
border : 1px;
border-color : black;
border-style : solid;
overflow-y : scroll;
width : 300px;
}
Я не уверен, что если эта проблема из-за пропущенного include
, опечатка, неправильная команда или в зависимости от того, что я не могу сказать, где лежит ошибка. Как таковой в интересах полноты я должен включать полное содержание каждого минимализированного файла. Я работаю над своим определением «минимальный». :)
Два куска совета: (1) упростить эту стену коды и производит (http://stackoverflow.com/help/mcve), и (2) [Minimal, полный и проверяемый пример.] спасите себя от боли, никогда не используя пробелы в именах файлов PHP. –
Пробелы удалены - без эффекта. Больше следовать. – toonice
Спасибо за ссылку, Эд Коттрелл. Я искал этот документ. – toonice