Php 每个数据库搜索结果的链接按钮

Php 每个数据库搜索结果的链接按钮,php,mysql,Php,Mysql,我已经四处搜索了好几天,似乎找不到答案,所以我想知道这里是否有人可以帮忙 我在数据库中显示搜索结果列表,它显示每个结果,并在“签出”、“返回”或“编辑”按钮下方显示。我试图实现的是从每个搜索结果下面的按钮中获取每个搜索结果的正确值,然后在下一页使用它们进行实际的签出。因此,当用户单击此页面上的“签出”、“返回”或“编辑”按钮时,上述值将被存储/发送到下一页,以备签出 如果我尝试使用$\u会话变量,它只给出存储的最后一个值。我很抱歉,如果这是一个简单的问题,我只是被这个问题困扰了一段时间,需要完成

我已经四处搜索了好几天,似乎找不到答案,所以我想知道这里是否有人可以帮忙

我在数据库中显示搜索结果列表,它显示每个结果,并在“签出”、“返回”或“编辑”按钮下方显示。我试图实现的是从每个搜索结果下面的按钮中获取每个搜索结果的正确值,然后在下一页使用它们进行实际的签出。因此,当用户单击此页面上的“签出”、“返回”或“编辑”按钮时,上述值将被存储/发送到下一页,以备签出

如果我尝试使用$\u会话变量,它只给出存储的最后一个值。我很抱歉,如果这是一个简单的问题,我只是被这个问题困扰了一段时间,需要完成它:

我正在使用mysql而不是mysqli,因为这是我老板想要的,但一旦他同意,我们将在未来进行更新

谢谢你的帮助,我为糟糕的编码道歉,因为我对这一切还很陌生

再次感谢

<?php session_start(); 

include ('conbase.php'); 
  if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true) {
  } else {
      header("Refresh: 0; url=loginfailure.php");
  }
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Search Results</title>
<link href="css/calcsearchs.css" type="text/css" rel="stylesheet" />
</head>
<body>

<div id="headDiv" style="background-color:#000"></div>
<div id="picDiv" style="padding-left: 25%; float: left"><a href="index.php"><img  src="images/ogplogo.jpg" /></a></div><div style="float: left; padding-top: 80px; padding- left: 10px"><p><h1>OGPSS Inventory Database</h1><br /><h2>Search Results</h2></p></div>
<div style="clear: both">
<div id="apDiv1">Logged in as:</div>
<div id="apDiv2"><?php echo ucfirst($_SESSION['namevar']); ?></div>
<div id="apDiv3"><?php echo date('d-m-Y - H:ia'); ?></div>
<div id="apDiv4"><input name="logoutbutton" type="submit" value="Log Out" style="height: 27px; width: 85px; font-size: 12px" /></div>
编辑:

你好,再次感谢你的帮助

这正是我要找的!现在唯一的一件事是,我肯定我在最后一页显示条目的地方做错了什么。使用此方法,我不确定我是否将$\u GET变量放在了正确的位置。当我来到这个页面时,在文本框中我看到了未定义的索引,其中应该有值

从一些例子中我看到这应该是可行的,但同时我确信我在这里做错了什么,所以如果你能告诉我在哪里

<?php session_start(); 
    if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true) {
    } else {
        header("Refresh: 0; url=loginfailure.php");
        }
?>  

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Confirm Checkout</title>
<link href="css/confirmcheckout.css" type="text/css" rel="stylesheet" />
</head>

<body>

<div id="apDiv1"></div>

<div id="topBarDiv"><a href="index.php"><img src="images/ogplogo.jpg" width="119"  height="205" alt="OGPLOGO" /></a></div>

<div id="apDiv3"><h1>OGPSS Inventory Database</h1></div>

<div id="apDiv4"><h3>Confirm Checkout</h3></div>

<form action="checkoutcomplete.php" method="post">

    <div id="mainDiv">Item S/N:</div>
    <div id="apDiv2"><input name="checksnbox" type="text" size="30" value="<?php echo $_GET['itemsn']; ?>" /></div>

    <div id="apDiv5">Item ID:</div>
    <div id="apDiv6"><input name="checkidbox" type="text" size="30" value="<?php echo $_GET['itemid']; ?>" /></div>

    <div id="apDiv8">Taken By:</div>
    <div id="apDiv9"><input name="checkusernamebox" type="text" size="30" value="<?php echo ucfirst($_SESSION['namevar']) ?>" /></div>

    <div id="apDiv10">Date Taken:</div>
    <div id="apDiv11"><input name="checkdatebox" type="text" size="30" value="<?php echo date('d-m-y'); ?>" /></div>

    <div id="apDiv14">Qty Taken:</div>
    <div id="apDiv15"><input name="checkqtybox" type="text" size="30" value="<?php echo $_GET['itemqty']; ?>" /></div>

    <div id="apDiv12">Item Name:</div>
    <div id="apDiv13"><input name="checitemnamebox" type="text" size="30" value="<?php echo $_GET['itemname']; ?>" /></div>

    <div id="apDiv7"><input style="height: 27px; width: 85px" name="checkcheckbut" type="submit" value="Confirm" /></div>

</form>

</body>
</html>

您可以按如下方式发送一个包含行值的隐藏输入,您需要将其添加到表单中


与其在表单中使用表单,不如在表单中使用tag来做同样的事情

 echo "<div><a href='confirmcheckout.php?id=$results['id']' method='post'>
       <input type='button' name='checkoutbut' value='Checkout' style='height: 27px; 
       width: 85px; font-size: 12px'/><input type='button' name='returnbut' 
       value='Return' style='height: 27px; width: 85px; font-size: 12px'/>
       <input type='button' name='editbut' value='Edit'style='height: 27px; 
        width: 85px; font-size: 12px' /></a></div></br></br>";

首先,你不应该把一个表单放在另一个表单里。这在任何浏览器中都不起作用,而且它被特别禁止,正如您在W3C XHTML官方规范B节“元素禁止”中所看到的那样:“表单不能包含其他表单元素。”

话虽如此,下一件事是你不应该在搜索结果页面或会话中有太多数据。最好的方法是简单地传递元素的id,并在下一页中执行另一次搜索,以检索包含所有必要数据的项。 你可以通过一个隐藏字段传递id,正如@AliTRixx所说的,带有

<input type='hidden' name='row_id' value='{$results['id']}'/>
或者在GET参数中,例如更改表单按钮表单链接

<a href ='confirmcheckout.php?id=ITEM_ID'>checkout</a>

与其在表单中使用表单,不如在表单中使用tag来做同样的事情。请不要在表单中使用表单。这样的代码只是要求被破坏。另外,请停止使用mysql。它已弃用,将来将被删除。请改用PDO或MySQLi。非常感谢您的帮助。我一定要试试这个!我从来都不知道把表单放在其他表单中是不好的,我必须解决这个问题。将尝试隐藏的输入谢谢!如果答案是有帮助的,那么接受它作为一个正确的答案将是伟大的。
 echo "<div><a href='confirmcheckout.php?id=$results['id']' method='post'>
       <input type='button' name='checkoutbut' value='Checkout' style='height: 27px; 
       width: 85px; font-size: 12px'/><input type='button' name='returnbut' 
       value='Return' style='height: 27px; width: 85px; font-size: 12px'/>
       <input type='button' name='editbut' value='Edit'style='height: 27px; 
        width: 85px; font-size: 12px' /></a></div></br></br>";
$id = $_GET['id'];
<input type='hidden' name='row_id' value='{$results['id']}'/>
<a href ='confirmcheckout.php?id=ITEM_ID'>checkout</a>