Error en la subida de fotos en un formulario de noticias
Buenos días amigos! Estoy realizando una web y me gustaría que me ayudarais con un problema que tengo. Cuando hago el formulario para insertar noticias lo tengo todo bien, pero falla algo en la inserción de las imagenes.
En la base de datos se me guarda perfectamente el nombre de la imagen, pero el fallo está cuando tiene que mover la foto a mi carpeta.
El error que me da es el siguiente:
Not Found
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Y el codigo que tengo en addpost.php es el siguiente:
Rogaría si me pudierais ayudar. Gracias
Editado
En la base de datos se me guarda perfectamente el nombre de la imagen, pero el fallo está cuando tiene que mover la foto a mi carpeta.
El error que me da es el siguiente:
Not Found
The requested URL /incofrade3/<br /><b>Warning</b>: move_uploaded_file(../img/upload/1507927205_DSC_0259.jpg): failed to open stream: Permission denied in <b>/Applications/XAMPP/xamppfiles/htdocs/incofrade3/inc/addpost.php</b> on line <b>16</b><br /><br /><b>Warning</b>: move_uploaded_file(): Unable to move '/Applications/XAMPP/xamppfiles/temp/phpQmcbLp' to '../img/upload/1507927205_DSC_0259.jpg' in <b>/Applications/XAMPP/xamppfiles/htdocs/incofrade3/inc/addpost.php</b> on line <b>16</b><br />http://localhost/incofrade3/post/0-tituko was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Y el codigo que tengo en addpost.php es el siguiente:
<?php require_once('../conexion.php'); //Validar Formulario if (!isset($_POST['titulo']) || $_POST['titulo']=='' || $_POST['categoria']=='' || $_POST['noticia']=='') exit; if(isset($_FILES['imagen']['name']) && $_FILES['imagen']['name']!=''){ $nombre=''; $contarimagenes=count($_FILES['imagen']['name']); for ($i=0; $i < $contarimagenes; $i++) { //Validar el tipo if($_FILES['imagen']['type'][$i]=='image/gif' || $_FILES['imagen']['type'][$i]=='image/jpg' || $_FILES['imagen']['type'][$i]=='image/jpeg' || $_FILES['imagen']['type'][$i]=='image/png'){ $nombre.=time().'_'.$_FILES['imagen']['name'][$i].'####'; $nombreupload=time().'_'.$_FILES['imagen']['name'][$i]; move_uploaded_file($_FILES['imagen']['tmp_name'][$i], '../img/upload/'.$nombreupload); } } $nombre=substr($nombre,0,-4); }else $nombre='';
Rogaría si me pudierais ayudar. Gracias
Editado
0
Puntos
Puntos
1453
Visitas
Visitas
1
Resp
Resp
Respuesta #1
Hola que tal, el error lo tienes en el directorio donde se sube la imagen.. puede que sea por 2 razones:
1 No tienes bien puesta la ruta de la carpeta y no la encuentra, revisa esto:
1 No tienes bien puesta la ruta de la carpeta y no la encuentra, revisa esto:
move_uploaded_file($_FILES['imagen']['tmp_name'][$i], '../img/upload/'.$nombreupload);2 La carpeta solicitada no tiene permisos de escritura, esto suele pasar cuando usas mac, te dejo un enlace que explica como modificar los permisos http://pabloleone.com/2013/07/cambiar-permisos-a-carpetas-y-sub-carpetas-en-mac/
0
Puntos
Puntos
Por alber hace 78 meses
Administrador