刚刚得到一个关于while循环和隐藏值的快速问题!
目前我正在尝试开发一个页面,我可以从数据库中的表中删除人员但在此之前我想搜索此人并在记录后用删除按钮显示结果。我有搜索工作!我甚至做了删除按钮,但我需要帮助传递变量。
我尝试过传递隐藏变量,如下所示:
echo "<input type='hidden' id='deleted' name='deleted' value = '<?php "echo $finder" ?>'>";
单击时会将变量传递到我想要删除的下一页,但是我收到以下错误:
&#34;解析错误:语法错误,意外情况&#39;回声&#39; (T_ECHO,期待&#39;,&#39;或&#39 ;;&#39;)
下面是整个while循环:
<html>
<head>
<title>Found Person to delete</title>
</head>
<body>
<?php
echo "<table>";
echo "<tr>";
echo "<th>cust_id</th>";
echo "<th>First Name</th>";
echo "<th>Last Name</th>";
echo "<th>Email</th>";
echo "<th>Delete Record</th>";
echo "</tr>";
include '\../php_includes/db_conx.php';
$finder = $_POST['delete'];
$query = "SELECT * FROM customers WHERE firstname LIKE '%{$finder}%' OR lastname LIKE '%{$finder}%' OR email LIKE '%{$finder}%' OR cust_id LIKE '%{$finder}%'";
$rs = mysqli_query($db_conx, $query);
if($query)
{
while($row = mysqli_fetch_assoc($rs))
{
echo "<form action= 'delete_final.php' method='POST'>";
echo "<tr>";
echo "<td>" . $row['cust_id'] . "</td>";
echo "<td>" . $row['firstname'] . "</td>";
echo "<td>" . $row['lastname'] . "</td>";
echo "<td>" . $row['email'] . "</td>";
echo "<td><input type ='submit' name = 'delete' value = 'delete'></td>";
echo "<input type='hidden' id='deleted' name='deleted' value = '<?php "echo $finder" ?>'>";
echo "</tr>";
echo "</form>";
}
echo "</table>";
}
?>
</body>
</html>
我想我想传递用户从搜索页面写的变量,找到用户(搜索哪个有效),然后在显示的人旁边有一个删除按钮(我有),点击时会占用用户输入的变量并删除该人。
要做到这一点,我想使用<input type = 'hidden'>
,这样当我点击删除时,它将使用隐藏变量(用户键入的内容)找到该用户并删除它们。
这是一个很好的方法吗?或者我是否应该让它变得更难?
我之前在表单中使用GET
而不是发布但同样的问题。
我可以将该输入类型隐藏在while循环中吗?应该使用GET
而不是POST
?为什么不起作用?
非常感谢任何帮助!
答案 0 :(得分:0)
那是因为你在回声中使用回声。试试这样:
echo '<input type="hidden" id="deleted" name="deleted" value="' . echo $finder . '"'>';