如何将foreach循环生成的变量传递到PHP中的另一个页面

如何将foreach循环生成的变量传递到PHP中的另一个页面,php,mysql,variables,foreach,Php,Mysql,Variables,Foreach,我有一个获取用户事件id的页面,然后使用该页面从mysql检索所有用户id和与该事件id相关的信息。然后,数据显示在一个表中,一行代表一个用户。所以,现在我想在用户在另一个页面中单击某个用户时显示该用户的其他信息 这是一个代码示例,用于说明我正在尝试的工作。代码可能不够精确,因为实际代码太长,无法显示 main.php <form name="input" method="post"> <input type="text" id="event_id" name

我有一个获取用户事件id的页面,然后使用该页面从mysql检索所有用户id和与该事件id相关的信息。然后,数据显示在一个表中,一行代表一个用户。所以,现在我想在用户在另一个页面中单击某个用户时显示该用户的其他信息

这是一个代码示例,用于说明我正在尝试的工作。代码可能不够精确,因为实际代码太长,无法显示

main.php

<form name="input" method="post">    
    <input type="text" id="event_id" name = "event_id" value = "" /><br>
   <input type="submit" name="Submit" value="Submit" />    
</form>

//$user_main is an associative array generated when event_id
//is entered into input text box and user click submit
 <?php $user_main = array(); ?>

<table>
    <?php
    //Loop through and print all user_id associated with event_id entered
    foreach(user_main as main)
    { ?>
    <tr>User ID: <?php echo $main['user_id'];?></tr>
    <tr>User Name: <?php echo $main['user_name'];?></tr>
    <tr>User Info: <a href = "display.php">Contact</a></tr>
    <?php } ?>
</table>


//$user\u main是事件\u id时生成的关联数组 //在输入文本框中输入,然后用户单击提交 用户ID: 用户名: 用户信息:
display.php

//Pass user_id to display.php page that correspond to the user id clicked
user_id = {{ 111 }}

//retrieve contact info from mysql for user_id = 111 and display below
<table>
    <tr>User ID: </tr>
    <tr>Mobile: </tr>
    <tr>Address: </tr>
    <tr>Email: </tr>
</table>
//将user\u id传递给display.php页面,该页面对应于所单击的用户id
用户_id={{111}
//从mysql检索用户_id=111的联系人信息,并显示在下面
用户ID:
流动电话:
地址:
电邮:

我的问题是如何将变量传递到另一个页面。例如,如果用户单击user_id=111的链接,我如何将值“111”传递到display.php页面,以便从mysql检索数据以显示信息?

在php发布到的页面上,使用
$\u REQUEST
$\u POST
变量获取数据。
例如,在显示页面上,您可以使用
$event\u id=$\u REQUEST[“event\u id”]

我想到的最简单的解决方案就是将用户id和
url
一起作为参数传递。这显然是假定
用户id
值不是机密的。因此,如果您这样定义
href
标记:

<tr>User Info: <a href = "display.php?id="<?php echo $main['user_id'];?>>Contact</a></tr>
<?php
echo $_GET['userid'];

但是,如果您希望传递
用户id
,使其在浏览器的地址栏中不可见,则可以发出一个简单的
post
请求,并在该请求中传递相关的
用户id
。希望它能让您从正确的方向开始。

对于此类任务,URI参数非常常用。在这种情况下,您可以使用
$\u GET
超全局

<tr>User Info: <a href = "display.php?userid=<?php echo $main['user_id'];?>">Contact</a></tr>
从现在起,这应该是清楚的。您可以根据您的
$\u GET
数据获取记录。别忘了在这里增加额外的安全性。永远不要相信用户输入

这是非常基本的东西,所以,我建议你读一读关于超球的书,直到你感到自信为止

用户信息:
把这行改成这行

<tr>User Info: <a href = "display.php?id=<?php $main['user_id']?>">Contact</a></tr>
用户信息:
然后可以在isset函数中运行查询

<?php 

isset($_GET['id'])
{
    $id=$_GET['id'];

    //Run your query here, include $id in where clause in your query
}

引用时,可以在php中使用Get或Request变量

GET方法发送附加到页面请求的编码用户信息。页面和编码信息由?性格 比如说

www.example.com/display.php?id='111'

并在
display.php
中以
$\u GET['id']
he$\u请求变量

PHP$\u REQUEST变量包含
$\u GET、$\u POST和$\u COOKIE
的内容。
PHP
$\u REQUE
ST变量可用于从使用get和POST方法发送的表单数据中获取结果。

谢谢。我从零开始自学php,在这一点上它对我来说还是很新的。在同时进入php项目和laravel之前,我只有1-2周的时间学习在线教程。不客气。你的问题提得很好,你也付出了一些努力。
<tr>User Info: <a href = "display.php?id=<?php $main['user_id']?>">Contact</a></tr>
<?php 

isset($_GET['id'])
{
    $id=$_GET['id'];

    //Run your query here, include $id in where clause in your query
}