使用php防止插入查询

使用php防止插入查询,php,mysql,arrays,insert,Php,Mysql,Arrays,Insert,我有一个php,它将在我的数据库中包含我的数据 但是在我的页面中,我有一个可以复制的div,所以我将这些信息发送到一个数组中(使用“#!@”内爆以避免在我将其插入数据库时发生任何类型的错误爆炸) 我的问题是,如果用户没有在第一个div内容字段中插入任何内容,我就不会进行插入,而且仍然如此 if ($_GET['action_ent'] != "#!@#!@#!@") { $myInputs = $_GET['action_ent']; foreach ($myI

我有一个php,它将在我的数据库中包含我的数据

但是在我的页面中,我有一个可以复制的div,所以我将这些信息发送到一个数组中(使用“#!@”内爆以避免在我将其插入数据库时发生任何类型的错误爆炸)

我的问题是,如果用户没有在第一个div内容字段中插入任何内容,我就不会进行插入,而且仍然如此

    if ($_GET['action_ent'] != "#!@#!@#!@")
    {
    $myInputs = $_GET['action_ent'];
     foreach ($myInputs as $eachInput) 
     {

            $valores = $eachInput;
            print_r($valores);
            $dummy = explode('#!@', $valores);

            $acao = $dummy[0];
            $resp_acao = $dummy[1];
            $inic_plan_acao = $dummy[2];
            $fim_plan_acao = $dummy[3];


            $inicio_acc = explode("/", $inic_plan_acao);
            $fim_acc = explode("/", $fim_plan_acao);

            $inicio_action = $inicio_acc[2]."-".$inicio_acc[1]."-".$inicio_acc[0];
            $fim_action = $fim_acc[2]."-".$fim_acc[1]."-".$fim_acc[0];




                $result2 = mysql_query("INSERT INTO `demv3`.`entraves_action` (`action_id`, `ent_id`, `resp_ent`, `data_fim`,`action_desc`,`action_resp`,`action_comeco`,`action_fim`) VALUES ('0', '$ent_id', '$resp_ent', '$data_fim', '$acao', '$resp_acao', '$inicio_action', '$fim_action')");

     }

    }
    else
    {
        echo "NOTHING";
    }

尝试检查foreach中的第一项:

if ($_GET['action_ent'] != "#!@#!@#!@")
        {
        $myInputs = $_GET['action_ent'];
         foreach ($myInputs as $eachInput) 
         {
                if(empty($eachInput)) {
                      echo 'NOTHING';
                      break;
                }

                $valores = $eachInput;
                print_r($valores);
                $dummy = explode('#!@', $valores);

                $acao = $dummy[0];
                $resp_acao = $dummy[1];
                $inic_plan_acao = $dummy[2];
                $fim_plan_acao = $dummy[3];


                $inicio_acc = explode("/", $inic_plan_acao);
                $fim_acc = explode("/", $fim_plan_acao);

                $inicio_action = $inicio_acc[2]."-".$inicio_acc[1]."-".$inicio_acc[0];
                $fim_action = $fim_acc[2]."-".$fim_acc[1]."-".$fim_acc[0];




                    $result2 = mysql_query("INSERT INTO `demv3`.`entraves_action` (`action_id`, `ent_id`, `resp_ent`, `data_fim`,`action_desc`,`action_resp`,`action_comeco`,`action_fim`) VALUES ('0', '$ent_id', '$resp_ent', '$data_fim', '$acao', '$resp_acao', '$inicio_action', '$fim_action')");

         }

        }
        else
        {
            echo "NOTHING";
        }
请注意,如果第一个输入之外的任何其他输入为空,则会中断循环。为了避免逻辑发生重大变化,您可以使用计数器或布尔标志来解决此问题:

  if(empty($eachInput) && $counter == 0) {
     echo 'NOTHING';
     break;
  }

如果输入来自一个表单,如果您需要它们输入某些内容,请将
必需的
放在第一个输入上,否则只需检查第一个输入的$\u GET,看看它是否为空。您的代码完全取决于
$\u GET['action\u ent']
所具有的内容。这是你无法完全控制的。首先,
var\u dump($\u GET)
显示了什么?