Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 会话变量通过POST持久化_Php_Variables_Post - Fatal编程技术网

Php 会话变量通过POST持久化

Php 会话变量通过POST持久化,php,variables,post,Php,Variables,Post,有人能在我的代码中看到错误吗 两个文件,一个变量使用JS在第一个页面上设置,我想将其传递到下一个页面 用户名变量在此处设置,首先在变量中设置,然后在会话中设置 username=wordOne+wordTwo+wordThree; 然后我提交表单,该表单将用户带到register-form.php 我喜欢!让它成为我的用户名。 当页面加载时,用户名被抓取并作为值输出到输入中 函数inputUsername(){ var username=“”; log(“我正在运行”+用户名); doc

有人能在我的代码中看到错误吗

两个文件,一个变量使用JS在第一个页面上设置,我想将其传递到下一个页面

用户名变量在此处设置,首先在变量中设置,然后在会话中设置

username=wordOne+wordTwo+wordThree;
然后我提交表单,该表单将用户带到register-form.php


我喜欢!让它成为我的用户名。
当页面加载时,用户名被抓取并作为值输出到输入中


函数inputUsername(){
var username=“”;
log(“我正在运行”+用户名);
document.getElementById('inputUsername')。值=用户名;
}

但是这不起作用,因为变量
username
没有在页面中持久化。

我看到的是,您要求
$\u POST[username]
,但从表单中您没有传递它。我的意思是这样的:

<form method="POST" action="register-form.php">
    <input type="hidden" name="username" value="<?php echo $_SESSION['username']; ?>">
    <button>I like it! Make it my username.</button>


在当前代码中,您正在访问_POST变量,但在代码中设置了_SESSION变量。因此,可能的解决方案是: 1.检查inputUsername()函数中的_会话变量或
2.在表单中设置用户名,以便在提交时将其发布到新页面。

如何在第一页中设置用户名变量?它是用JavaScript设置的。
<form method="POST" action="register-form.php">
    <button>I like it! Make it my username.</button>
</form>
<body onload="inputUsername()">


function inputUsername(){
 var username = "<?php echo isset($_POST[username])?$_POST[username]:''; ?>";
 console.log("I'm running " + username);
 document.getElementById('inputUsername').value = username;
}
<form method="POST" action="register-form.php">
    <input type="hidden" name="username" value="<?php echo $_SESSION['username']; ?>">
    <button>I like it! Make it my username.</button>