Foros del Web » Programando para Internet » PHP »

Warning: filesize() [function.filesize]: stat failed for /usuarios/usuariosbd.php

Estas en el tema de Warning: filesize() [function.filesize]: stat failed for /usuarios/usuariosbd.php en el foro de PHP en Foros del Web. Hola he realizado un scrip que cambia la contraseña del usuario logueado pero me sale el error del titulo nose por qué puede ser puesto ...
  #1 (permalink)  
Antiguo 17/07/2011, 14:23
 
Fecha de Ingreso: abril-2011
Ubicación: España, Mdrid
Mensajes: 89
Antigüedad: 13 años
Puntos: 1
Warning: filesize() [function.filesize]: stat failed for /usuarios/usuariosbd.php

Hola he realizado un scrip que cambia la contraseña del usuario logueado pero me sale el error del titulo nose por qué puede ser puesto que en mi servidor local funciona perfectamente, el problema se presenta uan vez subido al servidor. El servidor es amen y el código de cambiar la contraseña es el siguiente:

Código PHP:
[HTML]
<?php

session_start
();

$mensaje_error "";

if(!isset(
$_SESSION['nombre_usuario']))

{

   
$mensaje_error 'No has iniciado sesión';

}

else

if (
$_SERVER['REQUEST_METHOD'] == 'POST')

{

   
$accion = isset($_POST['accion']) ? $_POST['accion'] : '';

   
$base_datos '/usuarios/usuariosbd.php';

   
$pagina_suceso '';



   if (
filesize($base_datos) == 0)

   {

      
$mensaje_error 'Error en la base de datos';

   }

   else

   if (
$accion == 'cambiar_contrasena')

   {

      
$contrasena_value md5($_POST['contrasena']);

      
$nueva_contrasena md5($_POST['nueva_contrasena']);

      
$confirmar_contrasena md5($_POST['confirmar_contrasena']);

      
$nombre_usuario_value $_SESSION['nombre_usuario'];

      if (
$nueva_contrasena != $confirmar_contrasena)

      {

         
$mensaje_error 'TU contraseña y la confirmada no es la misma';

      }

      else

      if (!
ereg("^[A-Za-z0-9_!@$]{1,50}$"$nueva_contrasena))

      {

         
$mensaje_error 'Tu contraseña contiene carácteres no válidos';

      }

      else

      {

         
$nombre_usuarios = array();

         
$contrasenas = array();

         
$correos = array();

         
$nombre_completos = array();

         
$cuentas_activas = array();
         
$gustos = array();
           
$puntuaciones = array();
           
$cursos = array();
            
$tiempos_dedicados = array();
           
$tutos = array();

         
$contador 0;
         

         
$elementos file($base_datos);

         foreach(
$elementos as $linea)

         {

      list(
$nombre_usuario$contrasena$email$nombre_completo$activa$gusto$puntuacion$tiempo_dedicado$curso$tuto) = explode('|'trim($linea));

           
            
$nombre_usuarios[$contador] = $nombre_usuario;
            
$contrasenas[$contador] = $contrasena;

            
$correos[$contador] = $email;

            
$nombre_completos[$contador] = $nombre_completo;

            
$cuentas_activas[$contador] = $activa;
            
$gustos[$contador] = $gusto;
                  
$puntuaciones[$contador] = $puntuacion;
                  
$tiempos_dedicados[$contador] = $tiempo_dedicado;
                  
$cursos[$contador] = $curso;
                  
$tutos[$contador] = $tuto;


            if (
$nombre_usuario_value == $nombre_usuario)

            {

               if (
$contrasena_value == $contrasena)

               {

                  
$contrasenas[$contador] = $nueva_contrasena;

               }

               else

               {

                  
$mensaje_error 'Tu antigua contraseña no coincide';

                  break;

               }

            }

            else

            {

               
$contrasenas[$contador] = $contrasena;

            }

            
$contador++;

         }



         if (empty(
$mensaje_error))

         {

            
$archivo fopen($base_datos'w');

            for (
$i=0$i $contador$i++)

            {

               
fwrite($archivo$nombre_usuarios[$i]);

               
fwrite($archivo'|');

               
fwrite($archivo$contrasenas[$i]);

               
fwrite($archivo'|');

               
fwrite($archivo$correos[$i]);

               
fwrite($archivo'|');

               
fwrite($archivo$nombre_completos[$i]);

               
fwrite($archivo'|');

               
fwrite($archivo$cuentas_activas[$i]);
               
fwrite($archivo'|');
                    
fwrite($archivo$gustos[$i]);
                    
fwrite($archivo'|');
                    
fwrite($archivo$puntuaciones[$i]);
                
fwrite($archivo'|');
                    
fwrite($archivo$tiempos_dedicados[$i]);
                
fwrite($archivo'|');
                    
fwrite($archivo$cursos[$i]);
                   
fwrite($archivo'|');
                    
fwrite($archivo$tutos[$i]);

               
fwrite($archivo"\r\n");

            }

            
fclose($archivo);

            
header('Location: '.$pagina_suceso);

            exit;

         }

      }

   }

}


?>

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" >
<link rel="stylesheet" type="text/css" href="estiloperfil.css"></link>
<title>Musicaendo - Perfil de <?php
if (isset($_SESSION['nombre_usuario']))
{
   echo 
$_SESSION['nombre_usuario'];
}
?></title>
</head>
<body>
<!-- CABEZA -->
<div id="cabecero">
<div id="menu">
<div id="tabla">
    <ul>
<li><a href="/usuarios/opciones/index.php">Opciones</a></li>    
<li><a href="/usuarios/estadisticas.php" >Estadísticas</a></li>    
    </ul>
</div>
</div>
<div id="menu2">
<div id="tabla2">
    <ul>
<li><a id="especial" href="/usuarios/login.php"><form name="form_cerrar_sesion" method="post" id="form_cerrar_sesion">
<input type="submit" name="cerrar"value="Cerrar sesión" id="cerrar" />
</form></a></li> 
    </ul>
</div>
</div>
</div>
<div id="contenido">
<div id="herramienta">
<div id="encabezado">
<h1 id="h1_per">Perfil de <?php
if (isset($_SESSION['nombre_usuario']))
{
   echo 
$_SESSION['nombre_usuario'];
}
?></h1>
</div id="encabezado">
<div id="menu_perfil">
 <ul>
<li><a href="#">Tus estadísticas</a></li>    
<li id="cambiar">Cambiar: </li>       
<li><a href="#">Nick</a></li>  
<li><a href="contrasena.php">Contraseña</a></li>  
<li><a href="#">Nombre</a></li>    
<li><a href="#">Correo</a></li>
<li><a href="#">Gusto musical</a></li>
<li><a href="#">Curso</a></li>
<li><a href="#">Instituto</a></li>   
</ul>
</div>
<div class="margen">
<div id="cambiar_contrasena" >

<form name="cambiar_contrasena" method="post" action="<?php echo basename(__FILE__); ?>" id="cambiar_contrasena">

<input type="hidden" name="accion" value="cambiar_contrasena">

<table cellspacing="4" cellpadding="0" >

<tr>

   <td colspan="2" align="center" >Cambiar contraseña</td>

</tr>

<tr>

   <td align="right" >Tu actual contraseña:</td>

   <td align="left"><input name="contrasena" type="password" id="contrasena" ></td>

</tr>

<tr>

   <td align="right" >Nueva contraseña:</td>

   <td align="left"><input name="nueva_contrasena" type="password" id="nueva_contrasena" ></td>

</tr>

<tr>

   <td align="right" >COnfirmar nueva contraseña:</td>

   <td align="left"><input name="confirmar_contrasena" type="password" id="confirmar_contrasena" ></td>

</tr>

<tr>

   <td colspan="2"><?php echo $mensaje_error?></td>

</tr>

<tr>

   <td>&nbsp;</td><td align="left" valign="bottom"><input type="submit" name="cambiar_contrasena" value="¡Cambiar!" id="cambiar_contrasena"></td>

</tr>

</table>

</form>

</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
[/HTML]
Gracias de antemano. Solo decir que no me cambia la contraseña así que algo debe ir mal se acepta cualquier corrección.
  #2 (permalink)  
Antiguo 17/07/2011, 16:03
 
Fecha de Ingreso: julio-2011
Mensajes: 11
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Warning: filesize() [function.filesize]: stat failed for /usuarios/usuario

Es posible que la ruta del fichero no sea la correcta.

prueba a poner la ruta relativa, ten en cuenta también que en algunos servidores windows las barras son al revés "\".
  #3 (permalink)  
Antiguo 17/07/2011, 18:28
Avatar de duskrow  
Fecha de Ingreso: abril-2008
Mensajes: 267
Antigüedad: 16 años
Puntos: 8
Respuesta: Warning: filesize() [function.filesize]: stat failed for /usuarios/usuario

tu problema es que no ecuentra $base_datos = '/usuarios/usuariosbd.php';

el problema es o no esta en el directorio o el primer slash la hace de pedo

saludos
__________________
"El sabio no dice lo que piensa,pero piensa lo que dice"
Att Miguel Lomeli
Visita mi Blog
  #4 (permalink)  
Antiguo 18/07/2011, 01:31
 
Fecha de Ingreso: abril-2011
Ubicación: España, Mdrid
Mensajes: 89
Antigüedad: 13 años
Puntos: 1
Respuesta: Warning: filesize() [function.filesize]: stat failed for /usuarios/usuario

Es extraño porque la ruta está bien puesta... Me esta llevando por la calle de la amargura.

Agradezco vuestra ayuda sincera.
  #5 (permalink)  
Antiguo 23/04/2015, 15:47
 
Fecha de Ingreso: junio-2003
Mensajes: 9
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Warning: filesize() [function.filesize]: stat failed for /usuarios/usuario

Hola, puede ser un tema de permisos

Asegurate que el usuario que esta corriendo apache pueda escribir en el acrhico de texto donde tenes las claves.

Yo uso algo parecido pero muchisimo mas simple y concreto y funciona bien.

Saludos:
  #6 (permalink)  
Antiguo 23/04/2015, 16:05
Avatar de lauser
Moderator Unix/Linux
 
Fecha de Ingreso: julio-2013
Ubicación: Odessa (Ukrania)
Mensajes: 3.278
Antigüedad: 10 años, 8 meses
Puntos: 401
Respuesta: Warning: filesize() [function.filesize]: stat failed for /usuarios/usuario

Cita:
Iniciado por dminacori Ver Mensaje
Hola, puede ser un tema de permisos

Asegurate que el usuario que esta corriendo apache pueda escribir en el acrhico de texto donde tenes las claves.

Yo uso algo parecido pero muchisimo mas simple y concreto y funciona bien.

Saludos:
Te has fijado que respondes un post del 2011?
__________________
Los usuarios que te responden, lo hacen altruistamente y sin ánimo de lucro con el único fin de ayudarte. Se paciente y agradecido.
-SOLOLINUX-

Etiquetas: filesize, funcion, warning
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 14:39.