Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/07/2008, 11:07
huayra
 
Fecha de Ingreso: julio-2006
Mensajes: 23
Antigüedad: 17 años, 9 meses
Puntos: 0
Pregunta Como slvar el error:Cannot redeclare

Hola amigos ...

Aqui molestandole con un problema que seguro estoy que alguien ya paso y lo soluciono.

Tengo tres programas echos en php los cuales me sirven para parsear un xml y almacenarlo en una table en mysql.

El primer archivo php: lee desde un vector archivos xml

include "migra.php";
foreach ($array as $indice => $valor){

migra($valor);
echo $indice." = ".$valor."<br>";
}

aqui incluyo migra.php que contiene una funcion que lee un xml y lo almacena en mysql.

El segundo archvio php (migra.php): parsea un xml y lo almacena en mysql, incluyendo fundiones.php que tienes funciones de conectarse a la base de batos


function migra($archivo)
{
include('funciones.php');
$enlace = conectarse();
....
...
}

El tercer archivo php (funciones.php): contiene funcion de coneccion a la base de datos.
function conectarse()
{
$db_host="localhost"; // Host al que conectar, habitualmente es el ‘localhost’
$db_nombre="jabberd2"; // Nombre de la Base de Datos que se desea utilizar
$db_user="root"; // Nombre del usuario con permisos para acceder
$db_pass="basededatos321"; // Contraseña de dicho usuario
// Ahora estamos realizando una conexión y la llamamos ‘$link’
$link=mysql_connect($db_host,$db_user,$db_pass) or die ("Error conectando a la base de datos.");
// Seleccionamos la base de datos que nos interesa
mysql_select_db($db_nombre,$link) or die("Error seleccionando la base de datos.");
// Devolvemos $link porque nos hará falta más adelante, cuando queramos hacer consultas.
return ($link);
}
Lo que paso es que cuando envio un archivo en el vector todo funciona, el problema es que cuando envio varios archivos en el vector sale el siguiente error

Fatal error: Cannot redeclare conectarse() (previously declared in C:\AppServ\www\migrar_jabberd\funciones.php:8) in C:\AppServ\www\migrar_jabberd\funciones.php on line 18

El problema es que creo que incluyo funciones.php dentro de la funcion migra lo lee, ahora como hago para que cuando termine la funcion migro el include (funciones.php) desaparexca o ya no lo incluya en la segunda llllamda..

Por favor ayudenme...