tengo una base de datos con 300 campos en mysql, para ello necesito insertar datos via formulario, por eso he estructurado mi form en 4 partes (parte1.php -- parte4.php) y el procesamiento del form en el archivo send1.php, todo esto lo manejo con sesiones, pero al momento de procesar el formulario insertandolo en la base de datos obtendo el error de parse al intentar hacer un implode de un array, mi codigo aqui
Código PHP:
session_start();
// Sumo el array que ya tengo del anterior formulario con el que generé en el formulario que estoy procesando ...
// El mismo proceso es igual para N formularios que pueda tener ..
$_SESSION['variables']=array_merge($_SESSION['variables'],$_POST);
$variables=$_SESSION['variables'];
$tipodevalor = array (
"fecharegistro" => "DATE",
"departamento" => "VARCHAR",
"dos" => "VARCHAR",
"ciudad" => "VARCHAR",
"ciudaddos" => "VARCHAR",
"a01" => "VARCHAR",
"a02" => "VARCHAR",
"a03" => "VARCHAR",
"a04" => "VARCHAR",
"fechades" => "DATE",
"fecharet" => "DATE",
"a05" => "TEXT",
"a06" => "CHAR",
"a07" => "CHAR",
"a08" => "CHAR",
"a09" => "CHAR",
"a10" => "CHAR",
"a11" => "CHAR",
"a12" => "CHAR",
"a13" => "CHAR",
"a14" => "CHAR",
"a15" => "CHAR",
"a16" => "CHAR",
"a17" => "CHAR",
"a18" => "CHAR",
"a19" => "CHAR",
"a20" => "CHAR",
"a21" => "VARCHAR",
"a22" => "CHAR",
"a23" => "CHAR",
"a24" => "CHAR",
"a25" => "CHAR",
"a26" => "VARCHAR",
"a27" => "CHAR",
"a28" => "VARCHAR",
"a29" => "CHAR",
"a30" => "VARCHAR",
"a31" => "CHAR",
"a32" => "VARCHAR",
"a33" => "CHAR",
"a34" => "VARCHAR",
"a35" => "VARCHAR",
"a36" => "VARCHAR",
"a37" => "VARCHAR",
"a38" => "VARCHAR",
"a39" => "VARCHAR",
"a40" => "VARCHAR",
"a41" => "VARCHAR",
"a42" => "VARCHAR",
"a43" => "VARCHAR",
"a44" => "VARCHAR",
"a45" => "VARCHAR",
"a46" => "TEXT",
"b01" => "CHAR",
"b02" => "CHAR",
"b03" => "CHAR",
"b04" => "CHAR",
"b05" => "CHAR",
"b06" => "CHAR",
"b07" => "TEXT",
"b08" => "CHAR",
"b09" => "CHAR",
"b10" => "TEXT",
"b11" => "CHAR",
"b12" => "CHAR",
"b13" => "CHAR",
"b14" => "CHAR",
"b15" => "CHAR",
"b16" => "CHAR",
"b17" => "CHAR",
"b18" => "CHAR",
"b19" => "CHAR",
"b20" => "CHAR",
"b21" => "CHAR",
"b22" => "CHAR",
"b23" => "VARCHAR",
"b24" => "VARCHAR",
"b25" => "VARCHAR",
"b26" => "VARCHAR",
"b27" => "VARCHAR",
"b28" => "VARCHAR",
"b29" => "VARCHAR",
"b30" => "VARCHAR",
"b31" => "VARCHAR",
"b32" => "VARCHAR",
"b33" => "VARCHAR",
"b34" => "VARCHAR",
"b35" => "VARCHAR",
"b36" => "VARCHAR",
"b37" => "VARCHAR",
"b38" => "VARCHAR",
"b39" => "VARCHAR",
"b40" => "VARCHAR",
"b41" => "VARCHAR",
"b42" => "VARCHAR",
"b43" => "VARCHAR",
"b44" => "VARCHAR",
"b45" => "VARCHAR",
"b46" => "VARCHAR",
"b47" => "VARCHAR",
"b48" => "VARCHAR",
"b49" => "VARCHAR",
"b50" => "VARCHAR",
"b51" => "VARCHAR",
"b52" => "VARCHAR",
"b53" => "VARCHAR",
"b54" => "VARCHAR",
"b55" => "VARCHAR",
"b56" => "VARCHAR",
"b57" => "VARCHAR",
"b58" => "VARCHAR",
"b59" => "VARCHAR",
"b60" => "VARCHAR",
"b61" => "VARCHAR",
"b62" => "VARCHAR",
"b63" => "VARCHAR",
"b64" => "VARCHAR",
"b65" => "VARCHAR",
"b66" => "VARCHAR",
"b67" => "TEXT",
"b68" => "CHAR",
"b69" => "CHAR",
"b70" => "TEXT",
"c01" => "CHAR",
"c02" => "VARCHAR",
"c03" => "VARCHAR",
"c04" => "VARCHAR",
"c05" => "VARCHAR",
"c06" => "VARCHAR",
"c07" => "VARCHAR",
"c08" => "CHAR",
"c09" => "VARCHAR",
"c10" => "VARCHAR",
"c11" => "VARCHAR",
"c12" => "VARCHAR",
"c13" => "VARCHAR",
"c14" => "VARCHAR",
"c15" => "CHAR",
"c16" => "VARCHAR",
"c17" => "VARCHAR",
"c18" => "VARCHAR",
"c19" => "VARCHAR",
"c20" => "VARCHAR",
"c21" => "VARCHAR",
"c22" => "CHAR",
"c23" => "VARCHAR",
"c24" => "VARCHAR",
"c25" => "VARCHAR",
"c26" => "VARCHAR",
"c27" => "VARCHAR",
"c28" => "VARCHAR",
"c29" => "CHAR",
"c30" => "VARCHAR",
"c31" => "VARCHAR",
"c32" => "VARCHAR",
"c33" => "VARCHAR",
"c34" => "VARCHAR",
"c35" => "VARCHAR",
"c36" => "VARCHAR",
"c37" => "VARCHAR",
"c38" => "VARCHAR",
"c39" => "VARCHAR",
"c40" => "VARCHAR",
"c41" => "VARCHAR",
"c42" => "VARCHAR",
"c43" => "VARCHAR",
"c44" => "VARCHAR",
"c45" => "VARCHAR",
"c46" => "VARCHAR",
"c47" => "VARCHAR",
"c48" => "VARCHAR",
"c49" => "VARCHAR",
"c50" => "VARCHAR",
"c51" => "VARCHAR",
"c52" => "VARCHAR",
"c53" => "VARCHAR",
"c54" => "VARCHAR",
"c55" => "VARCHAR",
"c56" => "VARCHAR",
"c57" => "VARCHAR",
"c58" => "VARCHAR",
"c59" => "VARCHAR",
"c60" => "VARCHAR",
"c61" => "VARCHAR",
"c62" => "VARCHAR",
"c63" => "VARCHAR",
"c64" => "VARCHAR",
"c65" => "VARCHAR",
"c66" => "CHAR",
"c67" => "VARCHAR",
"c68" => "CHAR",
"c69" => "VARCHAR",
"c70" => "CHAR",
"c71" => "VARCHAR",
"c72" => "CHAR",
"c73" => "VARCHAR",
"c74" => "CHAR",
"c75" => "VARCHAR",
"c76" => "CHAR",
"c77" => "VARCHAR",
"c78" => "TEXT",
"c79" => "VARCHAR",
"c80" => "VARCHAR",
"c81" => "VARCHAR",
"c82" => "VARCHAR",
"c83" => "VARCHAR",
"c84" => "VARCHAR",
"c85" => "VARCHAR",
"c86" => "VARCHAR",
"c87" => "VARCHAR",
"c88" => "VARCHAR",
"c89" => "VARCHAR",
"c90" => "VARCHAR",
"c91" => "VARCHAR",
"c92" => "VARCHAR",
"c93" => "VARCHAR",
"c94" => "VARCHAR",
"c95" => "VARCHAR",
"c96" => "VARCHAR",
"c97" => "VARCHAR",
"c98" => "VARCHAR",
"c99" => "VARCHAR",
"c100" => "VARCHAR",
"c101" => "VARCHAR",
"c102" => "VARCHAR",
"c103" => "VARCHAR",
"c104" => "VARCHAR",
"c105" => "VARCHAR",
"c106" => "VARCHAR",
"c107" => "VARCHAR",
"c108" => "VARCHAR",
"c109" => "VARCHAR",
"c110" => "VARCHAR",
"c111" => "TEXT",
"c112" => "TEXT",
"c113" => "TEXT",
"c114" => "TEXT",
"c115" => "TEXT",
"d01" => "VARCHAR",
"d02" => "VARCHAR",
"d03" => "VARCHAR",
"d04" => "VARCHAR",
"d05" => "VARCHAR",
"d06" => "VARCHAR",
"d07" => "VARCHAR",
"d08" => "VARCHAR",
"d09" => "VARCHAR",
"d10" => "VARCHAR",
"d11" => "VARCHAR",
"d12" => "VARCHAR",
"d13" => "VARCHAR",
"d14" => "VARCHAR",
"d15" => "VARCHAR",
"d16" => "VARCHAR",
"d17" => "VARCHAR",
"d18" => "VARCHAR",
"d19" => "VARCHAR",
"d20" => "VARCHAR",
"d21" => "VARCHAR",
"d22" => "VARCHAR",
"d23" => "VARCHAR",
"d24" => "VARCHAR",
"d25" => "VARCHAR",
"d26" => "VARCHAR",
"d27" => "VARCHAR",
"d28" => "VARCHAR",
"d29" => "VARCHAR",
"d30" => "VARCHAR",
"d31" => "VARCHAR",
"d32" => "VARCHAR",
"d33" => "VARCHAR",
"d34" => "VARCHAR",
"d35" => "VARCHAR",
"d36" => "VARCHAR",
"d37" => "VARCHAR",
"d38" => "VARCHAR",
"d39" => "VARCHAR",
"d40" => "VARCHAR",
"d41" => "VARCHAR",
"d42" => "VARCHAR",
"d43" => "VARCHAR",
"d44" => "VARCHAR",
"d45" => "TEXT",
"d46" => "CHAR",
"d47" => "CHAR",
"d48" => "CHAR",
"d49" => "CHAR",
"d50" => "CHAR",
"d51" => "CHAR",
"d52" => "CHAR",
"d53" => "CHAR",
"d54" => "CHAR",
"d55" => "CHAR",
"d56" => "TEXT",
"d57" => "VARCHAR",
"d58" => "TEXT",
"d59" => "VARCHAR",
"d60" => "TEXT",
"d61" => "TEXT",
"d62" => "VARCHAR",
"d63" => "TEXT",
"d64" => "TEXT",
"d65" => "TEXT");
// Entonces, al llegar a la asignacion del valor, comparas el campo
// y determinas como lo vas a insertar...
$variables=$_SESSION['variables'];
foreach ($variables as $campo => $valor) {
$campos[]=$campo;
switch ($tipodevalor[$campo]) {
case "VARCHAR":
$valores[]= "'".$valor."'";
break;
case "CHAR":
$valores[]= "'".$valor."'";
break;
case "TEXT":
$valores[]= $valor;
break;
case "DATE":
$valores[]= "'".$valor."'";
break;
default: //Por si alguno se te olvida
$valores[]= "'".$valor."'";
break;
}
}
// el error esta aqui
sql="INSERT INTO tabla (implode(",",$campos)) VALUES (implode(",",$valores))";
mysql_query($sql) or die("Error en consulta <br>MySQL dice: ".mysql_error());
echo "Los Datos han sido ingresados correctamente!";
?>