Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 基于POST变量中的信息运行语句_Php - Fatal编程技术网

Php 基于POST变量中的信息运行语句

Php 基于POST变量中的信息运行语句,php,Php,我有点为难,但答案可能很简单 所以我有我的POST变量: Array ( [accept] => accept,29 [accept1] => accept,30 [submit] => Save Selections ) 那只是一张打印的$\u帖子 基本上,我想做的是获取第一个变量,删除“accept”部分,并将其旁边的数字存储在一个变量中,使用该变量(包含该数字)运行一些MySQL查询,然后移动到下一个;删除“accept”,将数字存储在旁边,并使用存储的数字运行查询。

我有点为难,但答案可能很简单

所以我有我的POST变量:

 Array ( [accept] => accept,29 [accept1] => accept,30 [submit] => Save Selections )
那只是一张打印的$\u帖子

基本上,我想做的是获取第一个变量,删除“accept”部分,并将其旁边的数字存储在一个变量中,使用该变量(包含该数字)运行一些MySQL查询,然后移动到下一个;删除“accept”,将数字存储在旁边,并使用存储的数字运行查询。它希望这样做多次,这是遍历包含“accept”的所有元素所必需的,然后是一个数字

任何帮助都将不胜感激

我在玩弄一些想法,并有这个代码。它显然不起作用,但也许我可以修复它并在此基础上继续发展

    while($i <= $elements)
    {
        while($x == 1)
        {
            $id = explode(',', next($_POST));
            echo $id;
            $x = 0;
        }
        $i++;
    }

while($i我将使用
foreach
循环通过
$\u POST
,检查键是否以
accept
(?)开头,如果是,则分解该值,并获取找到的数组的第二个值,并将其存储到某个地方供以后使用


顺便说一句,如果可能的话,我会更改前端,以便您在
$\u POST
中只有一个变量(一个数组),您必须循环。

我不确定这是否会解决您的问题,但我希望这对您有所帮助并提供一个想法:

$i = 0;
while($i <= count($your_array))
{
    $your_var = substr($your_array[$i], 7, 2); //get the number from your accept,29
    $query = "SELECT * FROM TABLE WHERE COLUMN = ". $your_var; //use it to run queries as you said
    $i+=1;
}

也许你应该先回显变量,以确保回显$your_var=substr($items,7,2);

谢谢!第一个有效。起初没有,但因为我忘了我的POST数组现在是多维的,所以我没有正确引用元素:)谢谢你的帮助!
foreach($your_post_array as $items)
{
    $your_var = substr($items, 7, 2);
    $query = "SELECT * FROM TABLE WHERE COLUMN = ". $your_var; //use it to run queries as you said
    $i+=1;
}