Php 打印时未更新值
好的,我在数据库中有两个用户,用户id分别为1和2。 我正在尝试获取他们的用户id,然后在另一个页面上打印它。 但是,每次它都将用户ID显示为1 代码如下:- 第一个代码是我打印的地方Php 打印时未更新值,php,mysql,Php,Mysql,好的,我在数据库中有两个用户,用户id分别为1和2。 我正在尝试获取他们的用户id,然后在另一个页面上打印它。 但是,每次它都将用户ID显示为1 代码如下:- 第一个代码是我打印的地方 <?php include('dbconnector.php'); $id=(isset($_REQUEST['user_id'])); echo $id; ?> 第二个代码是我获取这些详细信息的地方:- <?php include('dbconnector.php'); //fetch
<?php
include('dbconnector.php');
$id=(isset($_REQUEST['user_id']));
echo $id;
?>
第二个代码是我获取这些详细信息的地方:-
<?php
include('dbconnector.php');
//fetch the user information
$query = "select * from users";
$result=mysql_query($query, $db) or die (mysql_error($db));
echo "<table>";
echo "<tr>";
echo "<th> User ID</th>";
echo "<th> User Name</th>";
echo "</tr>";
while($row=mysql_fetch_assoc($result))
{
echo "<tr>";
echo "<td>" . $row['user_id'] . "</td>";
echo '<td><a href="admin_view_users.php?user_id=' . $row['user_id'] . '">' . $row['user_name'] . '</td>';
echo "</tr>";
}
echo "</table>";
?>
你知道为什么这样不行吗?
谢谢。您没有关闭
”;
在这行中:
$id=(isset($_REQUEST['user_id']));
您没有将$\u REQUEST['user\u id']
的值分配给$id
,而是分配isset($\u REQUEST['user\u id'])
的结果,它的计算结果显然为TRUE
,打印时转换为1
因此,你可以这样做:
$id = $_REQUEST['user_id'];
如果您想在分配之前检查
$\u REQUEST['user\u id']
是否存在,那么我建议您重构整个程序,因为您不希望依赖代码在没有必要的输入值的情况下执行,因此简单的三元数对您没有多大好处。RainFromHeaven答案的补充。
isset($\u请求['user\u id'])提供了是否指定了user\u id的概念。也就是说你实际上需要:
$id = isset($_REQUEST['user_id']) ? $_REQUEST['user_id'] : "";
$id = isset($_REQUEST['user_id']) ? $_REQUEST['user_id'] : "";