在php中将行ID传递到另一个页面
我试图通过用户单击指定行将行ID传递到另一个页面上。我有一个ID和info列的表 下面的代码显示所需的行ID和信息在php中将行ID传递到另一个页面,php,html,sql,Php,Html,Sql,我试图通过用户单击指定行将行ID传递到另一个页面上。我有一个ID和info列的表 下面的代码显示所需的行ID和信息 if ($info = $stmnt2->fetch()) { echo '<p>Your Info:</p>'; do { echo "$info[id] . $info[review] . <a href=edit.php?edit=$info[id]>edit</a></br&g
if ($info = $stmnt2->fetch()) {
echo '<p>Your Info:</p>';
do {
echo "$info[id] . $info[review] . <a href=edit.php?edit=$info[id]>edit</a></br> </br>" ; //The info id is contained in the $info['id']
} while ($info = $stmnt2->fetch());
} else {
echo "<p>No Info</p>";
}
在编辑页面中,我有一个输入,用户可以编写该输入来替换所选行(从传递的ID)
因此,我希望从第一页传递的ID用于将信息行替换为编辑页的用户输入将ID传递到下一页的URL,导航到下一页,然后使用
$ID=$\u GET['ID']
您的edit=$info['id']
部分是正确的,但是您在下一页使用了$\u POST和$\u POST['id']。需要GET全局,它的名称为edit,而不是id
if ($info = $stmnt2->fetch()) {
echo '<p>Your Info:</p>';
do {
echo "$info[id] . $info[review] . <a href=edit.php?edit=$info[id]>edit</a></br> </br>" ; //The info id is contained in the $info['id']
} while ($info = $stmnt2->fetch());
} else {
echo "<p>No Info</p>";
}
此外,为了将来的扩展和学习,如果您要使用内置变量的查询,请阅读如何使用绑定参数执行准备好的语句。您目前很容易使用sql注入,学习更新和更安全的方法是一个很好的做法。您可以使用$\u REQUEST获得参数值。
$update=$\u edit.php文件中的请求['edit']
使用$\u REQUEST方法时,您可以捕获$\u GET和$\u POST值。查看此方法是否有效
echo$info['id']$信息['review']。“”
@Dimi这正是他在做的事“$info['id']}”=“$info[id]”
当使用双引号字符串文字时,请告诉我们,这有什么事情没有像您预期的那样发生code@RiggsFolly它是通过添加到URL上工作的,但我看不到在下一页上使用它。您的脚本有可能查看发生了什么,甚至使用我正在尝试从$_get['edit']获取ID并将其传递到编辑页。我有另一个名为id的输入,用户可以根据$\u GET['edit']中的id键入它来替换信息。基本上在sql查询中,我试图用$\u GET['edit']中的id替换$info[id](其中包含所有行id)(这与用户单击的内容有关)我的应用程序我忘记在这种情况下添加它,尝试三元运算符:“;//信息id包含在$info['id'中]
<form action="edit.php" method="POST">
<input type="text" name="id" value="">
<input type="submit" value=" Update "/>
</form>
if ($info = $stmnt2->fetch()) {
echo '<p>Your Info:</p>';
do {
echo "$info[id] . $info[review] . <a href=edit.php?edit=$info[id]>edit</a></br> </br>" ; //The info id is contained in the $info['id']
} while ($info = $stmnt2->fetch());
} else {
echo "<p>No Info</p>";
}
if(isset($_GET['edit'])){
$update = $_GET['edit'];
$db->exec("UPDATE infos SET info = '$update' WHERE reviewid = '$info[id]'");
}