Foros del Web » Programando para Internet » PHP »

file_get_contents error 404

Estas en el tema de file_get_contents error 404 en el foro de PHP en Foros del Web. Hola a todos. Necesito vuestra ayuda. Estoy utilizando la funcion file_get_contents para subir el contenido de varios txt a mi base de datos mysql. Con ...
  #1 (permalink)  
Antiguo 16/01/2008, 03:49
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
file_get_contents error 404

Hola a todos. Necesito vuestra ayuda.

Estoy utilizando la funcion file_get_contents para subir el contenido de varios txt a mi base de datos mysql.
Con los primeros archivos, sin problema. Pero inexplicablemente con el último (que en local va bien) en internet me da el error 404.

El archivo esta en su ruta correcta, y ademas cuando solo lo muestro con echo lo hace perfectamente, el problema viene cuando intento meter el contenido en una variable.

El codigo es el siguiente:
Código PHP:
/* -----------------------  FALLO--------------------------------*/
    
mysql_query("DELETE FROM  inmuebledescripcion"); 
    
$texto file_get_contents ('../../txt/descripcion.TXT'); 
    
$lineas explode("\n"$texto);
    
$numlineas=count($lineas);
    for(
$n 1$n <= $numlineas$n += 100)
    {
        
$min=$n;
        
$max=$n+100;
        for(
$i $min$i $max$i++)
        {
            
$campos explode(";"$lineas[$i]); 
            if (
$campos[0]<>'')
            {
                
$id=$campos[0];
                
$descripcionstr_replace("\"","",$campos[2]);
                
$descripcionstr_replace("'","",$descripcion);
                
$cabecerastr_replace("\"","",$campos[4]);
                
$cabecerastr_replace("'","",$cabecera);

                
$datos"'".$id."','".$descripcion."','".$cabecera."'";
                
$insert "insert into inmuebledescripcion(IdPiso,Descripcion,Cabecera)
                            values ('"
.$id."','".$descripcion."','".$cabecera."')";
                
//echo $insert." //  <br>";
                
$result=mysql_query($insert,$link) or die(mysql_error());
            }
        }
    }

/* -----------------------  CORRECTO --------------------------------*/
    
mysql_query("DELETE FROM  inmuebles"); 
    
$texto file_get_contents ('../../txt/inmuebles.TXT'); 
    
$lineas explode("\n"$texto);
    
$numlineas=count($lineas);
    for(
$n 1$n <= $numlineas$n += 100)
    {
        
$min=$n;
        
$max=$n+100;
        for(
$i $min$i $max$i++)
        {
            
$campos explode(";"$lineas[$i]); 
            if (
$campos[0]<>'')
            {
                
$id=$campos[0];
                
$expedientestr_replace("\"","",$campos[3]);
                
$idtipoinmueblestr_replace("\"","",$campos[4]);
                
$idfamiliatipoinmueblestr_replace("\"","",$campos[5]);
                
$idtipooperacionstr_replace("\"","",$campos[6]);
                
$idpoblacionstr_replace("\"","",$campos[7]);
                
$situacion1str_replace("\"","",$campos[8]);
                
$situacion2str_replace("\"","",$campos[9]);
                
$superficiestr_replace("\"","",$campos[10]);
                
$precioptsstr_replace("\"","",$campos[13]);
                
$precioeurstr_replace("\"","",$campos[14]);
                
$hsimples_numstr_replace("\"","",$campos[18]);
                
$banoc_numstr_replace("\"","",$campos[19]);
                
$banoa_numstr_replace("\"","",$campos[20]);
                
$foto1str_replace("\"","",$campos[103]);
                
$foto2str_replace("\"","",$campos[104]);
                
$foto3str_replace("\"","",$campos[105]);
                
$foto4str_replace("\"","",$campos[106]);
                
$foto5str_replace("\"","",$campos[107]);
                
$foto6str_replace("\"","",$campos[108]);
                
$parametrizable1str_replace("\"","",$campos[111]);
                
$parametrizable6str_replace("\"","",$campos[112]);

                
$datos"'".$id."','".$expediente."','".$idtipoinmueble."','".$idfamiliatipoinmueble."'
                        ,'"
.$idtipooperacion."','".$idpoblacion."','".$situacion1."','".$situacion2."'
                        ,'"
.$superficie."','".$preciopts."','".$precioeur."','".$hsimples_num."'
                        ,'"
.$banoc_num."','".$banoa_num."','".$foto1."','".$foto2."','".$foto3."'
                        ,'"
.$foto4."','".$foto5."','".$foto6."','".$parametrizable1."','".$parametrizable6."','".addslashes($descripcion)."','".addslashes($cabecera)."'";
                
$insert "insert into inmuebles (IdPiso,Expediente,IdTipoInmueble,IdFamiliaTipoInmueble,IdTipoOperacion,IdPoblacion,Situacion1,Situacion2,SuperficieTotal,PrecioPts,PrecioEur,Hsimples_num,BanoC_num,BanoA_num,Foto1,Foto2,Foto3,Foto4,Foto5,Foto6,Parametrizable1,Parametrizable6,Descripcion,Cabecera)
                            values ("
.$datos.")";
                
$result=mysql_query($insert,$link) or die(mysql_error());
            }
        }
    } 
No se si infuirá, pero como los txt tienen muchos datos aumente el tiempo de ejecución, además tuve que meten un bucle para mirar de 100 en 100 registros.

Vuelvo a decir que en local funciona sin problema, y que en internet funciona cuando le quito ese trozo de codigo.

Mil gracias. Es urgente
  #2 (permalink)  
Antiguo 16/01/2008, 14:21
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 225
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: file_get_contents error 404

tas seguro q es descripcion.TXT' y no descripcion.txt recuerda q TXT es diferente de txt q lo lea el block de notas no significa que los sistemas unix tbn lo hagan
  #3 (permalink)  
Antiguo 17/01/2008, 06:13
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Re: file_get_contents error 404

Si que estoy segura. He hecho mil pruebas y en local funciona.
  #4 (permalink)  
Antiguo 18/01/2008, 03:21
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Re: file_get_contents error 404

Gente esto no tiene solucion logica. Cuando cambio de sitio el codigo, o lo imprimo en pantalla antes de guardar funciona bien.

Al final lo que he hecho (una chapuza) es dividir el codigo en dos paginas y que la primera me redirija automaticamente a la segunda.

Si alguien sabe que pasaba en mi codigo, que lo ponga que siempre es bueno aprender.

Muchas gracias
  #5 (permalink)  
Antiguo 21/05/2008, 04:58
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Dios Otra Vez

Hola! Necesito ayuda. Sin motivo aparente me vuelve a dar el mismo error después de muchos meses funcionando correctamente.

Por pavor, ¿Nadie tiene idea de que puede ser?
  #6 (permalink)  
Antiguo 21/05/2008, 08:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: file_get_contents error 404

pon la RUTA absoluta, porke seguramente no estan ni al mismo nivel... la local, y la del server...

osea....

a) etc/www/tests/foo.php y subes 2 niveles.... llegas a www/
b) c:\inetpub\www\php\pruebas\foo.php y subes 2 niveles... llegas a php\

asegurate o de poner la RUTA exacta y completa, o relativa... pero bien, o de plano.... rindete a Dios!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 26/05/2008, 04:40
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Respuesta: file_get_contents error 404

Hola.

He mirado la ruta y está correcta (hay que tener en cuenta que ha estado funcionando durante meses y las rutas no se han modificado).

Lo que saco de los archivos txt son descripciones. ¿Puede ser que alguna de estas descripiones sea demasiado larga para meterla en un array? Si es posible eso,¿Que cantidad de texto puede meter en el array?

Gracias
  #8 (permalink)  
Antiguo 26/05/2008, 09:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: file_get_contents error 404

Hola glome,

Depende más bien de la memoria que tenga asignado tu script, si son demasiadas direcciones puede que llegues al limite de memoria que tiene asignado PHP y por ende se cortaría.

Saludos.
  #9 (permalink)  
Antiguo 26/05/2008, 09:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: file_get_contents error 404

puede ser... ¿¿cuanto llegan a pesar estos archivos??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 27/05/2008, 02:32
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Respuesta: file_get_contents error 404

Hola

Ocupa casi 4 MB, si es eso cómo lo soluciono? Es que ya ni me lee el archivo

Gracias
  #11 (permalink)  
Antiguo 27/05/2008, 09:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: file_get_contents error 404

Hola glome,

Lo puedes cambiar en el php.ini en la directiva memory_limit.

Saludos.
  #12 (permalink)  
Antiguo 27/05/2008, 09:38
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Respuesta: file_get_contents error 404

Hola

No puedo modificar el php.ini porque es un servidor publico. ¿No existe alguna función de código para mi problema como set_time_limit(450)?

Gracias por tu respuesta seguire investigando
  #13 (permalink)  
Antiguo 27/05/2008, 10:01
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: file_get_contents error 404

Hola glome,

La directiva memory_limit solo se puede modificar en el php.ini, no es posible alterarla usando ini_set.

Saludos.
  #14 (permalink)  
Antiguo 27/05/2008, 11:38
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Respuesta: file_get_contents error 404

HOLA!!!!!

POR FIN!!!!

Si que existe la funcion, y me ha funcionado. Lo he puesto al iniciar la pagina :

Código PHP:
session_start();
set_time_limit(450); 
ini_set('memory_limit','64M'); 
Mil gracias a todos. No se que haria sin vosotros. (GatorV, aunque no conocieras la funcion me has dado la clave, GRACIAS)
  #15 (permalink)  
Antiguo 27/05/2008, 12:05
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: file_get_contents error 404

Hola glome,

Me da gusto que lo hayas resuelto, la ultima vez que cheque no se podía modificar esa variable por el memory_limit, a lo mejor lo cambiaron, con lo que ya se arreglo tu problema.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:55.