如何在php中获取url值?

时间:2012-05-05 13:44:29

标签: php mysql database

我想在用户登录时制作选项编辑产品。 这是用户在网络上点击编辑时的链接。

 <a href="edit.php?id=<?php $id=$data['gameId'];echo $id;?>" ><input type="button" value="Edit"/></a>

然后在编辑页面,有提交按钮,我在doUpdate.php中填写了一些验证我试图从doUpdate.php中的URL获取id以在数据库中进行更新(Id是主键,我使用我的sql作为数据库)所以我使用这个代码

  $id= $_GET['id'];

问题是,为什么$ id无法从网址中获取id值?我该如何解决这个问题? (它还没有托管,我使用localhost,因为我还在学习)

4 个答案:

答案 0 :(得分:1)

如果我正确理解你的问题,那么问题不是在edit.php中获取id,而是在doUpdate.php中获取id。大概你的编辑页面是doUpdate页面的POSTing日期,在这种情况下你需要做两件事。

首先在编辑页面的表单中,您需要在包含要传递给doUpdate.php的ID的表单中添加隐藏元素

<input type="hidden" name="id" value="<?php echo $_GET['id']; ?>"/>

然后在doUpdate.php中从$ _POST全局

中获取它
$id = $_POST['id'];

答案 1 :(得分:1)

您必须在edit.php中编辑表单操作,例如<form name="edit" action="doUpdate.php?id=<?= $_GET['id'] ?>,或者只需在表单中创建一个输入字段,该字段具有GET参数的值。

答案 2 :(得分:0)

<a>标记内的代码不正确。此外,<button>内不能有<a>。试试这个:

<a href="edit.php?id=<?php echo $data['gameId'];?>">Edit</a>

答案 3 :(得分:0)

PHP可以使用名为register_globals的功能以这种方式自动设置变量,但使用此功能可能会在应用程序中打开安全漏洞,这就是目前已弃用的漏洞,最终将从PHP中删除。< / p>

PHP手册详细解释了该功能及其不应使用的原因:http://php.net/manual/en/security.globals.php