使用按钮通过表单将$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']}”
,它与您的第一个答案一起工作,谢谢!