PHP - 在 url 中显示用户 ID
PHP - show user id in url
我希望能够在 url 中显示用户 ID,如下所示:profile.php?user=1、2 等
我一直在到处搜索,但我无法让它工作。
profile.php代码:
<?php
ob_start();
session_start();
require_once 'dbconnect.php';
// if session is not set this will redirect to login page
if( !isset($_SESSION['user']) ) {
header("Location: index.php");
exit;
}
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
$id = $_GET['userId'];
?>
PHP代码:
<?php
ob_start();
session_start();
require_once 'dbconnect.php';
$id = (isset($_GET['id'])) ? $_GET['id'] : $_SESSION['id'];
$query = "SELECT * FROM users WHERE userId = $id";
// if session is not set this will redirect to login page
if( !isset($_SESSION['user']) ) {
header("Location:profile.php?id=" . $_SESSION['user']);
exit;
}
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
$id = $_GET['userId'];
?>
<?php echo $userRow['userId'];?>
我在那里使用最后一个命令 link 我自己的个人资料,但我想知道如何查看其他用户的个人资料。
所以基本上你想在 url 中显示 id 或者想从 url
传递 id
如果你想使用 url 传递 id 而不是:
使用
<a href="profile.php?user=<?php echo $id; ?>">
并且您无法使用 $_GET[user];
获取该数据
所以请说明你想要什么。?
我会这样做:
if( !isset($_SESSION['user']) ) {
header("Location: index.php");
exit;
}
elseif ( isset($_SESSION['user'] && !$_GET['user']){
header("Location: profile.php?user=" . $_SESSION['user']);
}
else{
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
$id = $_GET['userId'];
}
我相信你在成功登录时设置了 $_SESSION['user'],然后你使用 header 将用户定向到 profile.php 页面,你需要做什么现在你需要将 header 更改为:
<?php
header("Location:profile.php?id=" . $_SESSION['user']);
?>
这会将用户引导至 profile.php?use=1 如果 id 为 1,则当您使用锚点从仪表板链接回 profile.php 时,它必须如下所示:
<a href="profile.php?id=<?php echo $_SESSION['user'];?>">profile</a>
NB: For your own benefit don't use mysql_ the function is depreciated
and removed from php 7. use mysqli instead,
Then for your own data security use prepared statements, with mysqli
or pdo
如果您使用以下形式,此代码将向 url 显示用户 ID:
<form="profile.php?=user<?php echo $id; ?>">
如果您想将它传递到其他页面以便您可以使用它,请使用这里的代码:
if (isset($_POST['nameofsubmitbutton']))
{
$Sample = $_POST['nameoffield'];
header("Location: nextpage.php?id=$Sample");
}
我希望能够在 url 中显示用户 ID,如下所示:profile.php?user=1、2 等
我一直在到处搜索,但我无法让它工作。
profile.php代码:
<?php
ob_start();
session_start();
require_once 'dbconnect.php';
// if session is not set this will redirect to login page
if( !isset($_SESSION['user']) ) {
header("Location: index.php");
exit;
}
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
$id = $_GET['userId'];
?>
PHP代码:
<?php
ob_start();
session_start();
require_once 'dbconnect.php';
$id = (isset($_GET['id'])) ? $_GET['id'] : $_SESSION['id'];
$query = "SELECT * FROM users WHERE userId = $id";
// if session is not set this will redirect to login page
if( !isset($_SESSION['user']) ) {
header("Location:profile.php?id=" . $_SESSION['user']);
exit;
}
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
$id = $_GET['userId'];
?>
<?php echo $userRow['userId'];?>
我在那里使用最后一个命令 link 我自己的个人资料,但我想知道如何查看其他用户的个人资料。
所以基本上你想在 url 中显示 id 或者想从 url
传递 id如果你想使用 url 传递 id 而不是:
使用
<a href="profile.php?user=<?php echo $id; ?>">
并且您无法使用 $_GET[user];
所以请说明你想要什么。?
我会这样做:
if( !isset($_SESSION['user']) ) {
header("Location: index.php");
exit;
}
elseif ( isset($_SESSION['user'] && !$_GET['user']){
header("Location: profile.php?user=" . $_SESSION['user']);
}
else{
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
$id = $_GET['userId'];
}
我相信你在成功登录时设置了 $_SESSION['user'],然后你使用 header 将用户定向到 profile.php 页面,你需要做什么现在你需要将 header 更改为:
<?php
header("Location:profile.php?id=" . $_SESSION['user']);
?>
这会将用户引导至 profile.php?use=1 如果 id 为 1,则当您使用锚点从仪表板链接回 profile.php 时,它必须如下所示:
<a href="profile.php?id=<?php echo $_SESSION['user'];?>">profile</a>
NB: For your own benefit don't use mysql_ the function is depreciated and removed from php 7. use mysqli instead,
Then for your own data security use prepared statements, with mysqli or pdo
如果您使用以下形式,此代码将向 url 显示用户 ID:
<form="profile.php?=user<?php echo $id; ?>">
如果您想将它传递到其他页面以便您可以使用它,请使用这里的代码:
if (isset($_POST['nameofsubmitbutton']))
{
$Sample = $_POST['nameoffield'];
header("Location: nextpage.php?id=$Sample");
}