Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Error failed to open stream al subir imagen con php en mac

Hola,

al subir la imagen click en boton de pop up al seleccionar la imagen jpeg que cumple con los requisitos del script me sale este error en el archivo subir_avatar.php:

Warning: move_uploaded_file(avatar/4.jpg): failed to open stream: Permission denied in/Applications/XAMPP/xamppfiles/htdocs/mi-pagina-web/user/subir_avatar.php on line 25

Warning: move_uploaded_file(): Unable to move '/Applications/XAMPP/xamppfiles/temp/phpayhLxj' to 'avatar/4.jpg' in /Applications/XAMPP/xamppfiles/htdocs/mi-pagina-web/user/subir_avatar.php on line 25

y la linea de codigo 25 del archivo es la misma idem a la del codigo original, bueno el codigo es 100% el mismo,
una ayuda por favor,


saludos



Editado
0
Puntos
1691
Visitas
14
Resp
Por claudiop hace 85 meses
Principiante
Respuesta #1
podría ser un problema de configuracion del xampp segun lo qe indica el error :

move_uploaded_file(): Unable to move '/Applications/XAMPP/xamppfiles/temp/phpayhLxj' to


...?
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #2
Hola esto pasa por que en mac la subida de archivos funciona un poco diferente, tan solo tienes que dar permisos de lectura/escritura a la carpeta donde subes los ficheros ya que mac las tiene bloqueadas por defecto.

Te paso unos enlaces de guía para saber como cambiarle los permisos, recuerda que la carpeta que tienes que modificar (dar permisos) en tu caso es /htdocs/mi-pagina-web/user/avatar/

https://support.apple.com/kb/PH25287?locale=es_ES
http://pabloleone.com/2013/07/cambiar-permisos-a-carpetas-y-sub-carpetas-en-mac/

salu2
0
Puntos
Por alber hace 85 meses
Administrador
Respuesta #3
ok, gracias

pero ahora sube la imagen a la carpeta pero no la muestra en el perfil la imagen de perfil...en la bbdd y campo avatar no se almacena ajunto imagen de campo avatar co la misma configuracion del curso
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #4
creo que el servidor web local que tienes no va fino del todo, por lo que veo te da muchos problemas.. descarga el proyecto final del curso que estas haciendo y pruebalo a parte en tu servidor local.. (no olvides hacer lo de permisos de carpetas)

si aun así sigues con el problema es error lo tienes en tu servidor local, si con todo esto no lo solucionas vemos como tienes el código php para ver si falta algún parámetro

salu2
0
Puntos
Por alber hace 85 meses
Administrador
Respuesta #5
ya,
el proyecto cursozeuz en la bbdd subio y se ve normal la imagen de perfil, pero en el optro proyecto mio al subir la imagen incluso la ventana del archivo subir_avatar.php no se cierra, sigue abierta....pero como digo :-|
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #6
entonces el error lo tienes en subir_avatar.php, pega el código por aquí y te lo reviso ;P
0
Puntos
Por alber hace 85 meses
Administrador
Respuesta #7
aca va el codigo, ademas este .php está en la carpeta user y la carpeta avatar esta desbloqueada:

<?php
if (!isset($_SESSION)) {
session_start();
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Subir Imagen</title>
<link rel="shortcut icon" type="image/x-icon" href="../img/favicon.ico" />
<style type="text/css">
body {
background-color:#f5f5f5;
}
</style>
</head>
<body >
<?php if ((isset($_POST["enviado"]) == "form2")) {

if (($_FILES['userfile']['size']>102400) || ($_FILES['userfile']['type'] != "image/jpeg"))
echo "Esta imagen no es valida, prueba con otra";
else
{
$nombre_archivo = $_FILES['userfile']['name'];
move_uploaded_file($_FILES['userfile']['tmp_name'], "avatar/".$_SESSION['MM_Id'].".jpg");

?>
<script>
opener.document.form2.avatar.value="<?php echo $_SESSION['MM_Id']; ?>.jpg";
self.close();
</script>
<?php
}
}
else
{?>
<form action="subir_avatar.php" method="post" enctype="multipart/form-data" id="form2">
<p>
<input name="userfile" type="file">
</p>
<p>
<input type="submit" name="button" id="button" value="Subir Imagen">
</p>
<input type="hidden" name="enviado" value="form2" />
</form>
<?php }?>
</body>
</html>
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #8
al subir la imagen es colocada bien en la carpeta avatar y pone el id del usuario en la uimagen, pero pasa todo lo demas, no se cierra el pop up subti_avatar.php y al actualizar no se ve la foto en perfil, la foto no se almacena en la bd, y ahora al actualizar el campo lema SE BORRA. Ingreso un lema directamente en la bd y luego al editar perfil y lo demas ...el lema se borra de la bd....Podría ser problema de la bd? pero no sé porque el cursozeuz en lel serv local y al editar y actualizar funciona todo normal como te comenté antes.

Los codigos están y los veo identico, de hecho la pagina editar.php la usé de plantilla, copié y pegue en mi proyectoy solo cambie los datos.
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #9
adjunto pantalazos de la bd
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #10
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #11
lo del cambilo y actualizacion del lema está solucionado, solo sigue el problema de la imagen no la puedo ver
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #12
OTRO DATO:
yo camboio el nombre del archivo no_avatar.jpg por 4.jpg por ejemplo, de una imagen y se ve la imagen en el perfil y en editar.php...parece qe es problem a del archivo subir_avatar.php
0
Puntos
Por claudiop hace 85 meses
Principiante
Respuesta #13
ok comprime tu proyecto y envíalo junto con tu base de datos (tienes que exportarla) a info@datoweb.com y le echamos un vistazo a fondo, después te respondo por aquí la solución :P
0
Puntos
Por alber hace 85 meses
Administrador
Respuesta #14
gracias! lo veo apenas pueda
0
Puntos
Por claudiop hace 85 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate