我可以通过PHP中的表单发送其他变量吗?

时间:2014-01-09 21:17:19

标签: php

我的mysql表格members包含iduserpasswordverified

当用户使用用户和密码登录时(与member-db相比),他们会看到一个表单。表单收集信息由管理员手动检查。 提交表单后,它会向管理员发送一封电子邮件,其中包含所有详细信息以手动确认。

我遇到的问题是,管理员希望该电子邮件包含一个链接,使他能够在单击时更新成员表中的已验证字段。我需要发送一个以前存储的变量和表单来执行此操作。这样我就有了一个指向members表的链接。

例如,如果我将$ user_id存储为我需要更新的行的id,并且我可以使用表单向前发送,那么我可以使用UPDATE功能WHERE id = $ user_id

这是我的表格......

<form method="post" name="verify_form" action="../includes/verify.php">
Website for Online Verification: <input type="text" name="webpage" id="webpage" /><br />
Identification Number: <input type="text" name="number" id="number" /><br />
Expiration Date: <input type="text" name="expire" id="expire" /><br />
<input type="submit" value="Verify Me!" onclick="return vformhash(this.form, this.form.webpage, this.form.number, this.form.expire);" />
<input type="reset" value="Clear Form" />
</form>

当用户提交时,有没有办法将我以前捕获的$ user_id发送到verify.php页面?

6 个答案:

答案 0 :(得分:2)

您可以使用隐藏字段:

<input type="hidden" name="userid" value="<?php echo $user_id; ?>" >

答案 1 :(得分:1)

您可以使用:

<input type='hidden' name='user' value=<?php echo $user_id; ?>>

在表格内。

答案 2 :(得分:0)

你可以在网址中发送

 $url = "verify.php?user_id=" . $ user_id;

并在

的verify.php页面中访问它
 $ user_id = $_GET ['user_id'];

答案 3 :(得分:0)

您可以使用隐藏字段:<input type="hidden"...

如果信息是敏感信息,则不应将其放在隐藏字段中,而应将其存储在会话中或服务器上。然后,您可以使用隐藏字段存储可用于稍后再次查找这些值的键。

如果您使用常规会话变量,如果表单中没有键,则如果用户在多个选项卡中打开了多个表单,则可能会遇到查找错误值的问题。

答案 4 :(得分:0)

两个选项:

更改您的for标记以将ID作为GET参数传递:

action="../includes/verify.php?user_id=123"

-OR -

添加隐藏字段:

<input type="hidden" name="user_id" id="user_id" value="123" />

您可以使用$_GET['user_id']选项#1访问此值,或使用$_POST['user_id']访问PHP脚本中的选项#2。

答案 5 :(得分:0)

当用户登录时,将其ID保存在会话值中,例如$_SESSION["userID"]。然后在verify.php中,您可以访问$_SESSION["userID"]。它比将ID作为参数来回传递更清晰。