ccliment, muchas gracias por responder.
Pero sigo teniendo el mismo problema con tu consejo, aunque se simplifica y clarifica el código mucho más.
Lo que estoy intentando hacer con este bucle es lo siguiente:
Recojo mi array ($diffe_array) y cada uno de sus elementos los voy cogiendo para pasarles otro archivo.php (Paso0.php) el cual utilizará ese elemento como variable string (de ahí lo de $maldito) para correrlo, y así sucesivamente con todos los elementos de mi array.
Ahora bien, lo que me está pasando es lo siguiente:
Si le paso tu código con include(), lo que ocurre es que me recoge el primer elemento de mi array y lo usa en Paso0.php correctamente, pero el programa se para ahí.
Si le paso tu código pero en este caso con include_once() entonces me sigue leyendo el código (no se para) pero no me recoge otro elemento de mi array para volver a pasarle Paso0.php saliéndose del foreach.
Para aclararlo todo más creo que lo mismo es importante que te pase el código de Paso0.php porque lo mismo es de ahí el problema (pero ya te digo que no lo veo), aquí va, a ver que opinas.
Código PHP:
Ver original<?php
function Conectarse()
{
if (!($link=pg_connect("host=xxxxx port=xxxx dbname=xxxxx user=xxxxx password=xxxxx"))) { echo "Error conectando a la base de datos.";
}
return $link;
}
$maldito = $_SESSION['maldito'];
$rutas="/mi/ruta/hacia/directorio//";
$fin= $rutas.$maldito;
$row = 0;
$handle = fopen($fin, "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $row++;
echo '<b><br/><br/>';
$cadena = "insert into tabla(campo1,campo2,campo3,campo4,campo5,campo6,campo7,campo8) values(";
for ($c=0; $c < $num; $c++) {
if ($c==($num-1)){
$cadena = $cadena."'".$data[$c] . "'";
}
else{
$cadena = $cadena."'".$data[$c] . "',";
}
}
$cadena = $cadena.");";
echo $cadena."<br>";
$enlace=Conectarse();
}
?>
Con este código lo que estoy haciendo es recoger $maldito como string. Este string coincide con el nombre de un archivo plano que está en mi directorio, lo abro leo su contenido y monto consulta con esos datos para introducirlos en mi tabla de mi base de datos postresql. Así deberí pasar para cada elemento, pero ya te digo que no funciona.
Gracias de nuevo