我想在用户登录时制作选项编辑产品。 这是用户在网络上点击编辑时的链接。
<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,因为我还在学习)
答案 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