Foros del Web » Programando para Internet » PHP »

Quien me explica esto....!!!

Estas en el tema de Quien me explica esto....!!! en el foro de PHP en Foros del Web. Warning: fread() [function.fread]: Length parameter must be greater than 0 in C:\AppServ\www\libro-trade\firmar.php on line 6 Se supone que yo estoy haciendo una libro de visitas, ...
  #1 (permalink)  
Antiguo 09/05/2006, 10:37
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años
Puntos: 0
Quien me explica esto....!!!

Warning: fread() [function.fread]: Length parameter must be greater than 0 in C:\AppServ\www\libro-trade\firmar.php on line 6


Se supone que yo estoy haciendo una libro de visitas, mejor dicho estoy modificando un libro de vistas que baje de internet el codigo es este.

CODIGO ENTERO EDITADO

<?php
$pvm = getdate();
$archivo="libro.txt";
$uusi="<table border=0 width=95% cellspacing=1><tr><td width=30%><b>Nombre...
$fp=fopen($archivo, "r+");
$vanha=fread($fp, filesize($archivo));
fseek($fp, 0);
fwrite($fp, "${uusi}${vanha}");
fclose($fp);

print "<b>Gracias por tu Comentario !!</b><br>";
print "<a href=libro.php>Regresar</a>";
?>


bueno espero que puedan ayudarme.

De antemano se agradece.

Saludos desde Viña del Mar, CHILE.

Última edición por juan007; 09/05/2006 a las 11:00
  #2 (permalink)  
Antiguo 09/05/2006, 10:41
 
Fecha de Ingreso: septiembre-2004
Ubicación: Montevideo
Mensajes: 346
Antigüedad: 19 años, 6 meses
Puntos: 0
deberias poner todo el codigo de firmar.php!

Saludos!
__________________
Liber
  #3 (permalink)  
Antiguo 09/05/2006, 10:42
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 4 meses
Puntos: 281
Por lo que veo $archivo es menor o igual a 0 en este caso. $archivo tiene que ser mallor que cero para que la funcion fread() funcione correctamente.
  #4 (permalink)  
Antiguo 09/05/2006, 10:54
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
Si pudieras mostrar la declaración de $archivo porfavor

Saludillos.
  #5 (permalink)  
Antiguo 09/05/2006, 11:51
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años
Puntos: 0
alguna idea compañeros(as)....de este problemita.

Se agradece
  #6 (permalink)  
Antiguo 09/05/2006, 11:59
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
¿Dicho archivo se encuentra en la misma carpeta que tu archivo php? De lo contrario tendras que especificar la ruta en donde se encuentra.

Saludillos
  #7 (permalink)  
Antiguo 09/05/2006, 12:18
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años
Puntos: 0
Compañero:
El archivo libro.txt se encuentra en el mismo directorio raiz donde estan los scipt de php.

Gracias
  #8 (permalink)  
Antiguo 09/05/2006, 13:23
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 5 meses
Puntos: 11
Por que no haces comprobaciones? Ejemplo:

Código PHP:
<?php
   $pvm 
getdate();
   
$archivo="libro.txt";
   
$uusi="<table border=0 width=95% cellspacing=1><tr><td width=30%><b>Nombre...";
   if(
file_exists($archivo))
   {
       
$tamanio=filesize($archivo);
       if(
$tamanio>0)
       {
           
$fp=fopen($archivo"r+");
           
$vanha=fread($fp$tamanio);
           
fseek($fp0);
           
fwrite($fp"${uusi}${vanha}");
           
fclose($fp);
       }
   }
?>
Mas largo ... mayor satisfacción, el tamaño importa.
  #9 (permalink)  
Antiguo 09/05/2006, 14:36
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años
Puntos: 0
Wuena compañero.

Se agradece.

Le agrege algunas cositas osea un else...ya que cuando borro el contenido del libro.txt y agrego el primer comentario no lo hacia ya que $tamanio era 0 y no entraba...bueno dejo el codigo.

Me gustaria saber si esta es la forma mas optima, ya que a primera impresion me funciona.

if(file_exists($archivo))
{
$tamanio=filesize($archivo);
if($tamanio>0)
{
$fp=fopen($archivo, "r+");
$vanha=fread($fp, filesize($archivo));
fseek($fp, 0);
fwrite($fp, "${uusi}${vanha}");
fclose($fp);
}
else
{
$fp=fopen($archivo, "r+");
fwrite($fp, "${uusi}${vanha}");
fclose($fp);
}
}
print "<b>Gracias por tu Comentario !!</b><br>";
print "<a href=libro.php>Regresar</a>";


Gracias a todo los que ayudaron en lograr sacar el problema sobre todo al compañero claudiovega.

Saludos
  #10 (permalink)  
Antiguo 15/10/2007, 16:15
 
Fecha de Ingreso: octubre-2007
Mensajes: 1
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Quien me explica esto....!!!

puedes agregar un @ antes del fopen. A mi me funciono bastante bien
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 07:00.