Foros del Web » Programando para Internet » PHP »

problema con upload

Estas en el tema de problema con upload en el foro de PHP en Foros del Web. Buenas, soy nuevo en php y tengo un problema al subir el archivo a una carpeta del servidor. El problema esta en que no se ...
  #1 (permalink)  
Antiguo 19/10/2004, 02:25
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 14 años, 9 meses
Puntos: 0
problema con upload

Buenas, soy nuevo en php y tengo un problema al subir el archivo a una carpeta del servidor. El problema esta en que no se la direccion del server "c:/..." y lo he mirado en el phpinfo y no me sale la letra de la unidad "c:/". Este script me funcionaba en mi pc perfectamente.


<?PHP


$img = $HTTP_POST_FILES['img']['tmp_name'];

$img_name = $HTTP_POST_FILES['img']['name'];

$img_size = $HTTP_POST_FILES['img']['size'];

$img_type = $HTTP_POST_FILES['img']['type'];



$img_error = $HTTP_POST_FILES['img']['error'];

if ($img_name != null)
{
//Comprobación de errores
if ( $img_error > 0 )
{
echo 'Problema : ';
switch ($img_error)
{
case 1: echo 'Fichero excede el tamaño permitido en el php.ini';break;
case 2: echo 'Fichero execede el tamaño máximo';break;
case 3: echo 'Fichero subido parcialmente';break;
case 4: echo 'Fichero no se ha subido';break;
}
exit;
}

//Comprobación del tipo MIME
if ($img_type != 'image/pjpeg')
{
echo 'Problema: el ficher no és una imatge "jpg"';
exit;
}

//Colocamos el archivo en la ubicacion que queramos
$upfile = 'not_img/'.$img_name;

//Subimos el archivo
if ( is_uploaded_file ($img) )
{
if ( ! move_uploaded_file ($img,$upfile) )
{
echo 'Problema: No se puede mover el fichero al directorio solicitado';
exit;
}
}
else
{
echo 'Problema.';
exit;
}
}
$titul = $HTTP_POST_VARS["titul"];
$descrp = $HTTP_POST_VARS["descrp"];
$noticia = $HTTP_POST_VARS["noticia"];
$img = $HTTP_POST_VARS["img"];

include('conectarse_bd.php');
$enlace=conectarse_bd();

mysql_select_db("123") or die("No pudo seleccionarse la BD.");


if ($temafile_name != null)
{
/* Realizar una consulta SQL */
$consulta = "INSERT INTO noticies ( id , titul , descrp , noticia , img ) VALUES ( '', '$titul', '$descrp', '$noticia', '$img_name')";
$resultado = mysql_query($consulta)
or die("La consulta 1 falló" . mysql_error());
}
else
{
/* Realizar una consulta SQL */
$consulta = "INSERT INTO noticies ( id , titul , descrp , noticia , img ) VALUES ( '', '$titul', '$descrp', '$noticia', '$img_name')";
$resultado = mysql_query($consulta)
or die("La consulta 2 falló" . mysql_error());
}
?>
<h1>Noticia ficada</h1>
__________________
Calle17.net

edgargranados.es
  #2 (permalink)  
Antiguo 19/10/2004, 03:19
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

¿Que fallo te da? Y si no ves la ruta "c:/..." y ves una tal como "/...." entonces es que tu servidor es linux o unix, no windows.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 19/10/2004, 03:31
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 14 años, 9 meses
Puntos: 0
Muchas gracias por ayudarme. Pues entonces sera linux o unix. El problema esta en la direccion de la carpeta, porque lo probe en mi ordenador y me funcionaba bien y cuando lo puse en un servidor que no es mio pues me fallaba.

error:
Warning: move_uploaded_file(not_img/DSC01632.JPG): failed to open stream: Permission denied in /inlander/sites/gentic.org/web/htdocs/insertar_noticia_submit2.php on line 45

Warning: move_uploaded_file(): Unable to move '/tmp/php7RA7iv' to 'not_img/DSC01632.JPG' in /inlander/sites/gentic.org/web/htdocs/insertar_noticia_submit2.php on line 45
Problema: No se puede mover el fichero al directorio solicitado
__________________
Calle17.net

edgargranados.es
  #4 (permalink)  
Antiguo 19/10/2004, 03:41
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Prueba con
Código PHP:
 $upfile './not_img/'.$img_name
(asumo que lo queires meter en un subdirectorio del directorio donde esta el script).

Ademas, not_img debe existir y el usuario PHP (o apache, depende de la instalacion) debe tener permiso de escritura en ese directorio. ¿Que permisos tiene ese directorio? Si usas un programa de FTP suele verse dando a las propiedades de esa carpeta. Si creaste el directorio mediante FTP puede que solo el usuario FTP tenga permisos de escritura en ese directorio.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 19/10/2004, 06:05
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 14 años, 9 meses
Puntos: 0
Muchas gracias, he puesto todos los permisos de escritura y la direccion "./not_img..." y me ha funcionado perfectamete,

Saludos
__________________
Calle17.net

edgargranados.es
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 00:22.