我正在创建一个个人资料页面,可以在其中编辑用户名。我似乎无法弄清楚如何在成功编辑后更新显示在首页的用户名(即 Hi Kana!)。
该名称是使用我页面顶部的会话变量$_SESSION['username']生成的
<?php
session_start();
if(isset($_POST['submit']) && isset($_SESSION['newusername'])){
unset($_SESSION['username']); //clear existing username session
$_SESSION['username'] = $_SESSION['newusername']; //replace with the new username
echo $_SESSION['username'];
} else {
echo $_SESSION['username'];
}
?>
在使用文本输入上设置的不同名称点击提交按钮后,它应该会发生变化,但事实并非如此。这些是我上面提到的代码之后的代码行。
<?php
$textinput = $_POST['textinput'];
if(isset($_POST['submit']))
{
if(strlen($_POST['textinput']) < 2)) {
$errormessage = 'too short';
}
else
{
$_SESSION['newusername'] = $textinput; //setup a new session for the new username to be used above.
}
}
?>
请注意,引用的两组代码在同一页中。
发生的情况是该名称仍然显示以前的名称,据说已被覆盖。我尝试刷新页面但它仍然没有改变,我需要再次提交(第二次)以显示新名称。
largeQ