使用按钮通过表单将$row[';id';]发送到另一个PHP
我正在尝试创建一个可以打开和关闭设备的页面,这是一种智能家居 代码如下所示:使用按钮通过表单将$row[';id';]发送到另一个PHP,php,sql,Php,Sql,我正在尝试创建一个可以打开和关闭设备的页面,这是一种智能家居 代码如下所示: <form method="post" action="toggle.php"> <input type="hidden" name="id" value="<?php echo {$row['id']};?>"/> <button type="submit" name="on" id="on" class="btn btn-success"&g
<form method="post" action="toggle.php">
<input type="hidden" name="id" value="<?php echo {$row['id']};?>"/>
<button type="submit" name="on" id="on" class="btn btn-success">On</button>
<button type="submit" name="off" id="off" class="btn btn-danger">Off</button>
</form>
您可以使用superglobal$\u POST
访问正在发布到toggle.php的数据,就像您使用例如$\u POST['off']所做的那样
mysqli_query($mysqli,"UPDATE devices SET status = 'On' WHERE id = '".$_POST['id']."'");
快速提示:您的代码容易受到SQL注入的攻击,您可能希望在此处了解它们:您可以使用superglobal$\u POST
,访问正在发布到toggle.php的数据,就像您使用$\u POST['off']时所做的那样
mysqli_query($mysqli,"UPDATE devices SET status = 'On' WHERE id = '".$_POST['id']."'");
快速提示:您的代码容易受到SQL注入的攻击,您可能希望在此处了解它们:嘿,Paul,谢谢您的回答。不幸的是,这对我不起作用。我肯定我在什么地方做错了什么。如果我,而不是“$\u POST['id']”插入一个id号,代码就可以工作了。奇怪。你能在执行查询之前var\u dump($\u POST['id'])
确保你的id确实在那里吗?我试过了,然后var\u dump
返回了string(16)
。这意味着什么?我没有任何id为16的设备。然后我们才发现问题。您如何检索设备(可能您的查询是什么样子的?),这样您就可以像我现在就可以工作一样显示它们了!将
的值从value=“
更改为value=“{$row['id']}”
,它与您的第一个答案一起工作,谢谢!嘿,保罗,谢谢你的回答。不幸的是,这对我不起作用。我肯定我在什么地方做错了什么。如果我,而不是“$\u POST['id']”插入一个id号,代码就可以工作了。奇怪。你能在执行查询之前var\u dump($\u POST['id'])
确保你的id确实在那里吗?我试过了,然后var\u dump
返回了string(16)
。这意味着什么?我没有任何id为16的设备。然后我们才发现问题。您如何检索设备(可能您的查询是什么样子的?),这样您就可以像我现在就可以工作一样显示它们了!将
的值从value=“
更改为value=“{$row['id']}”
,它与您的第一个答案一起工作,谢谢!