Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.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 打印时未更新值_Php_Mysql - Fatal编程技术网

Php 打印时未更新值

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

好的,我在数据库中有两个用户,用户id分别为1和2。 我正在尝试获取他们的用户id,然后在另一个页面上打印它。 但是,每次它都将用户ID显示为1

代码如下:- 第一个代码是我打印的地方

<?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'] : "";