我遇到传递变量的问题。这是我认为应该将$ user变量传递给new_page.html的代码:
if (mysqli_query($con,$newUser))
{
$user = $_GET[username];
header('Location: new_page.html?currentUser=$user');
}
else
{
header('Location: sign up.html');
}
在html页面内,我尝试使用用户变量(已传入)作为文本属性创建指向新页面的链接:
<a href = "user_page.php"> <?php echo $currentUser ?><a/>
谁能看到我做错了什么?
由于
答案 0 :(得分:1)
您无法在html文件中处理PHP。您可以在PHP文件中处理HTML - 因此请始终使用.php扩展名。
我认为用户名是一个帖子?所以:
$username = $_POST['username'];
header('Location: page.php?user='.$username);
然后在page.php中,您可以使用以下内容从URL中收集该变量:
$username = $_GET['user'];
重要提示: 注意使用连接将变量添加到PHP Header函数中:
而不是:
header('Location: new_page.html?currentUser=$user');
使用连接:
header('Location: new_page.html?currentUser='.$user);
如果您需要更多变量:
header('Location: new_page.html?currentUser='.$user.'&anothervar='.$anotherVar);
答案 1 :(得分:0)
在分配$ user时会出现问题,缺少引号:
$user = $_GET['username'];
答案 2 :(得分:0)
将new_page。 html 更改为new_page。 php 然后:
替换此行:
<a href = "user_page.php"> <?php echo $currentUser ?><a/>
通过:
<a href = "user_page.php"> <?php echo $_GET['currentUser'] ?><a/>
另一方面,当您访问此变量时,它的值将 $ user 作为字符串,以获得它的实际值,将引号更改为双引号:
header("Location: new_page.html?currentUser=$user");
见: