Php 将SQL查询设置为等于数组

Php 将SQL查询设置为等于数组,php,mysql,Php,Mysql,我正在做一个如下的查询 select id, prefix, fname, lname, suffix, city, state, zip, bio, votes from stateChair_nominees where id=$candidate_id 我的候选人id等于post方法 $candidate_id = $_POST; 我一直在犯这个错误 选择id、前缀、fname、lname、后缀、城市、州、邮政编码、bio、来自州主席候选人的投票,其中id=Array“无效查询”whe

我正在做一个如下的查询

select id, prefix, fname, lname, suffix, city, state, zip, bio, votes from stateChair_nominees where id=$candidate_id
我的候选人id等于post方法

$candidate_id = $_POST;
我一直在犯这个错误

选择id、前缀、fname、lname、后缀、城市、州、邮政编码、bio、来自州主席候选人的投票,其中id=Array“无效查询”where子句中的未知列“Array”

我得到的是无效的query1错误,因为它在一个骰子上指向该错误

$result_candidate = mysql_query($sql_candidate, $link) or die("Invalid query1". mysql_error());
为什么我的id表示等于数组

where id=Array"
我希望我的sql语句在投票时等于每个id。如何让我的查询做到这一点


谢谢:)

$\u POST
是通过POST传递的所有值的数组。如果您提交的表单包含名为“id”的输入元素,如下所示

`<input name="id" value="Your_ID_Here" />`
``
您可以使用
$\u POST['id']


此外,您的查询易受SQL注入的攻击。请使用
mysql\u real\u Escape\u string()
或使用准备好的语句(or)使用该值进行转义。

$\u POST
是通过POST传递的所有值的数组。如果您提交的表单包含名为“id”的输入元素,如下图所示

`<input name="id" value="Your_ID_Here" />`
``
您可以使用
$\u POST['id']


此外,您的查询易受SQL注入攻击。请使用
mysql\u real\u Escape\u string()
或使用准备好的语句(or)使用该值进行转义。

$\u POST是一个数组,包含请求中接收到的整个表单。它可能有助于您查看

print_r($_POST);
您需要引用实际的表单变量名,例如:

$candidate_id = $_POST['id'];
如果您需要一个id数组,那么sql将需要使用
IN
子句中的
内爆
id数组

$candidate_ids = $_POST['id'];

/* escape $candidate_ids here, you can use array_walk for this */

$sql = 'select ... where candidate_id in (' . implode(',', $candidate_ids) . ')';

请确保您正确使用了动态sql。

$\u POST是一个数组,包含请求中接收到的整个表单。它可能有助于您查看

print_r($_POST);
您需要引用实际的表单变量名,例如:

$candidate_id = $_POST['id'];
如果您需要一个id数组,那么sql将需要使用
IN
子句中的
内爆
id数组

$candidate_ids = $_POST['id'];

/* escape $candidate_ids here, you can use array_walk for this */

$sql = 'select ... where candidate_id in (' . implode(',', $candidate_ids) . ')';

请确保您也正确地使用了动态sql。

因此,如果我想执行键1、2和3,$\u POST的外观如何?$\u POST[1]如何将另一个id放入其中?
$\u POST
是一个关联数组。它具有字符串作为键。数组键将是您为表单元素提供的
名称
属性。因此,如果我要执行键,则$\u POST的外观如何?$\u POST[1]如何将另一个id放入其中?
$\u POST
是一个关联数组。它有字符串作为键。数组键将是您给表单元素的
名称
属性。如果您想知道它为什么写数组,请尝试以下操作:$a=array();echo“\$a=$a”;如果您想知道它为什么写数组,请尝试以下操作:$a=array();echo“\$a=$a”";如果表单上的name元素等于一个变量怎么办?例如..我的复选框等于等于数据库中某一行的变量。基本上$candidate等于1,2或3或4..以此类推。因此,如果我的$candidate\u id=$\u POST[1]上没有可供引用的名称;那我怎么才能把所有的id都纳入我的逻辑呢;这是我另一个表单上的按钮。如果表单上的name元素等于一个变量怎么办?例如..我的复选框等于等于数据库中某一行的变量。基本上$candidate等于1,2或3或4..以此类推。因此,如果我的$candidate\u id=$\u POST[1]上没有可供引用的名称;那我怎么才能把所有的id都纳入我的逻辑呢;这是我另一张表格上的按钮。