如果有人按下按钮,我目前正试图这样做,例如"接受申请"它会更新"活跃"在数据库中从0到1.这就是我所做的,但显然它不起作用。
处理部分:
if(isset($_REQUEST['acceptapplication'])){
$acceptid = $_POST['acceptid'];
$SQL = "UPDATE `users` SET `active`='1' WHERE id = $acceptid";
$result = mysql_query($SQL); }
我的表格:
<form action='' name='acceptid' method='acceptapplication'>
<input value='<?php echo $charid ?>' type='submit'/>
</form>
在此示例中,charid表示数字7.我希望它执行以下查询:
更新users
设置active
=&#39; 1&#39; WHERE id = 7
我希望charid成为值的原因是因为在所有场合中值都不一样。因此,如果我能成功完成这项工作,那就好了。
答案 0 :(得分:0)
这$(document).ready()
错了。您要发送method='acceptapplication'
。您也可以使用SQL注入。使用参数化查询。
尝试将其更改为
GET
然后它将作为<form action='' name='acceptid' method='POST'>
请求进行处理。
有关详情,请参阅此处:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form
实际上,在查看整个表单后,您还有其他一些问题。
POST
如果没有<form method='POST'>
<input value='<?php echo $charid ?>' type='hidden' name='acceptid'/>
<input type="submit" value="Submit" />
</form>
它将请求发送到同一页面,则不需要注意action=''
。
虽然未定义的索引通知是由action
引起的,因为$_POST['acceptid']
未定义/填充。
答案 1 :(得分:0)
你应该使用post方法
<form action='' name='acceptid' method='post'>
答案 2 :(得分:0)
表单的方法是错误的,您需要使用POST方法传递参数,因此稍后您可以通过$ _POST [&#39; id&#39;]检查查询。