如何重新加载PHP页面以从CSV获取新值

时间:2017-07-19 19:00:25

标签: javascript php forms csv

我创建了一个PHP页面,它从CSV中获取值,将它们作为表单显示给用户,然后将更改提交到CSV(覆盖)。

我有两个问题。一,当我提交时,我需要在表格中显示新的CSV(更改后的CSV),但我只有在按 F5 时才能显示。 还有两个,如果我多次点击提交按钮,我的代码会变得有点疯狂。

那么如何在不按 F5 的情况下重新加载此页面以显示此新信息,或者如果我在提交按钮上单击多次,我的代码会变得怪异?

<?php
ini_set('max_input_vars', 3000);
//***********************************
//          CLIENT SIDE
//***********************************


$i=0;
$j=0;
global $var;
global $aux;
global $cnpj_cadastro;
global $data_corte;
global $data_analise;
global $header;
$val=0;




$f = fopen("Base_Cadastro_CNPJ_Nulo.csv", "r");
//$f = fopen("CSV_PIN.csv", "r");
while (($line = fgetcsv($f)) !== false)
{
    if(strlen($line[0])>0)
    {
        $aux[$j]=$line;
        $j++;
    }
}
fclose($f);


$colunas=count($aux[0]);
foreach ($aux as $qtd) {
    $linhas+= count($qtd);
}

$i=0;
$j=0;

while(strlen($aux[$j][0])>0)
{
$j++;
$linhas=$j;
}
$linhas=$linhas-1;

$i=0;
$j=0;
$k=0;
$l=0;
$m=0;
$n=0;
$p=0;
$q=0;
$indice_acao=0;

echo "<html>";
echo"<body>";
echo"<table border=1>"; //p.groove {border-style: groove;}
//echo "<form id='form_teste' name='tabela' method='post' action=''>";
echo "<form id='form_teste' name='tabela' method='post' action='$PHP_SELF'>";
 for($j=0;$j<=$linhas;$j++)
    {
             echo"<tr>";
             for($i=0;$i<=$colunas;$i++)
             {          

                    if($j!=0)
                    {
                        if($i==0)
                        {                           
                        //  echo"<td>".$aux[$j][0]."<td>";
                            $cnpj_cadastro[$k]=$aux[$j][0];
                            echo"<td>".$cnpj_cadastro[$k]."</td>";
                            $k++;
                            $val++;

                         }
                        if($i==1)
                        {
                            //echo"<td>".$aux[$j][1]."<td>";
                            $data_corte[$l]=$aux[$j][1];
                            echo"<td>".$data_corte[$l]."</td>";
                            $l++;

                        }
                        if($i==2)
                        {
                            //echo"<td>".$aux[$j][2]."</td>";
                            $instalacao[$m]=$aux[$j][2];
                            echo"<td>".$instalacao[$m]."</td>";
                            $m++;
                        }

                        if($i==3)
                        {
                            $data[$n]=$aux[$j][3];
                            echo"<td>".$data[$n]."</td>";
                        //  echo $data=date('d/m/Y');
                            //echo"</td>";
                            $n++;   
                        }


                        if($i==4)
                        {
                            echo"<td>";
                            echo  "<select name=ACAO_CNPJ_INVALIDO_".$indice_acao.">";
                            echo  "<option value=".$aux[$j][4].">".$aux[$j][4]."</option>";
                            echo  "<option value='Remover_INSTALAÇÃO da base de origem'>Remover_INSTALAÇÃO da base de origem</option>";
                            echo  "<option value='Solicitar atualização CNPJ pelo depto comercial'>Solicitar atualização CNPJ pelo depto comercial</option>";
                            echo  "<option value='Ação desnecessária'>Ação desnecessária</option>";
                            echo  "</select>";
                            echo"</td>";
                            $indice_acao++;

                         }
                        if($i==5)
                        {

                            $analisado_por[$p]=$aux[$j][5];
                            echo"<td>".$analisado_por[$p]."</td>";
                            $p++;
                        }
                        if($i==6)
                        {
                            $flag[$q]=$aux[$j][6];
                            echo"<td>".$flag[$q]."</td>";
                            $q++;
                        }


                    }
                    else
                    {
                        if(strlen($aux[$j][$i])>0)
                        {
                        echo"<td>";

                        $header=$header.','.$aux[$j][$i];

                        echo $aux[$j][$i];
                        echo"</td>";
                        }
                    }


             }
             echo"</tr>";



    }


$var=$val;




echo "<input type='submit' name='submit' />";


echo"</form>";
echo"</table>";
echo"</body>";
echo "</html>";



//***********************************
//          SERVER SIDE
//***********************************




$j=0;
for ($i=0;$i<$var;$i++)
{

      $acao[$i]=$_POST['ACAO_CNPJ_INVALIDO_'.$i];
      // echo"</br>";
      // echo 'original_analisado'.$i.': '.$aux[$i+1][4];
      // echo"</br>";
      // echo 'valor_analisado'.$i.': '.$acao[$i];

      If($aux[$i+1][4]!=$acao[$i])
      {

          $flag[$i]=1;
      }

}

//$header = substr($header, 1, -1);
$header = substr($header, 1);
$i=0;
$fd = fopen("Base_Cadastro_CNPJ_Nulo.csv", "w");
fputs($fd, $header);
fputs($fd, PHP_EOL);
foreach($cnpj_cadastro AS $cnpj)
{   
fputs($fd, $cnpj            .',');
fputs($fd, $data_corte      [$i].',');
fputs($fd, $instalacao      [$i].',');
fputs($fd, $data            [$i].',');
fputs($fd, $acao            [$i].',');
fputs($fd, $analisado_por   [$i].',');
fputs($fd, $flag            [$i]);
fputs($fd, PHP_EOL);
$i++;
}
fclose($fd);


parent.window.location.reload(true);
?>

0 个答案:

没有答案