Foros del Web » Programando para Internet » PHP »

Problemas con guardar una imagen en el mismo directorio con php

Estas en el tema de Problemas con guardar una imagen en el mismo directorio con php en el foro de PHP en Foros del Web. Hola alguien me podria colaborar. tengo un formulario en el que estoy enviando el documento del usuario, la url de la imagen que es almacenada ...
  #1 (permalink)  
Antiguo 19/04/2011, 14:32
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Pregunta Problemas con guardar una imagen en el mismo directorio con php

Hola alguien me podria colaborar.

tengo un formulario en el que estoy enviando el documento del usuario, la url de la imagen que es almacenada en la BD, y la imagen que es guardada en una carpeta en el servodor que me crea el codigo php.
este es el codigo php que tengo:

$ced=$_POST['cedula'];
$ruta='../../documentacion_digital';
$carpeta = mkdir($ruta.'/'.$ced);
copy($_FILES['archivos']['tmp_name'], $ruta.'/'.$ced.'/'.$_FILES ['archivos']['name']);
$url = $ruta.'/'.$ced.'/'.$_FILES['archivos']['name'];

el problemas es que cuando vuelvo a guardar una imagen en este mismo directorio me sale un erro que me dice que el directorio ya existe.
como podria hacer para que no me salga este error y la verdad soy novato en php.
este es el codigo que tengo

gracias.
  #2 (permalink)  
Antiguo 19/04/2011, 14:38
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

la funcion mkdir crea el directorio, y como a la segunda vez ya existe pues da error usa condicionales, si el directorio ya existe entonces no uses mkdir, una solucion mas facil es quitarla y crear el directorio tu mismo. solo una vez, pues por lo que veo solo lo necesitas crear una vez y ahi guardarás todo.
  #3 (permalink)  
Antiguo 19/04/2011, 15:00
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Lo intentare de la forma en que lo dices.
gracias
  #4 (permalink)  
Antiguo 19/04/2011, 15:17
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Hola memoadian.
lo intente condicionando para verificar si mi carpeta existia pero me sigue saliendo el mimo erro este fue el codigo que utilice esta vez y hasta el momento no se me ha ocurrido nada mas, sera que hay otra forma de hacer funcionar esto:

<?php
$ced=$_POST['cedula'];
$ruta='../../documentacion_digital';
$carpeta = mkdir($ruta.'/'.$ced);

if(!is_dir($carpeta))
{
copy($_FILES['archivos']['tmp_name'], $ruta.'/'.$ced.'/'.$_FILES ['archivos']['name']);
print $url = $ruta.'/'.$ced.'/'.$_FILES['archivos']['name'];
}
else
{
print "Ya existe el directorio.";
}
?>
  #5 (permalink)  
Antiguo 19/04/2011, 15:31
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

la funcion is_dir "Indica si el nombre de archivo dado es un directorio."

aunque verifica que sea un directorio no se me hace muy fiable, prefiero readdir

y ademas la variable $carpeta que verificas es la que trae la funcion mkdir

o sea mal mal

debes pasar la variable ruta, y el mkdir solo debe ejecutarse si no existe el directorio

Código PHP:
Ver original
  1. <?php
  2. $ced=$_POST['cedula'];
  3. $ruta='../../documentacion_digital';
  4.  
  5. if(!is_dir($ruta))
  6. {
  7.     $carpeta = mkdir($ruta.'/'.$ced);
  8.     copy($_FILES['archivos']['tmp_name'], $ruta.'/'.$ced.'/'.$_FILES ['archivos']['name']);
  9.     echo $url = $ruta.'/'.$ced.'/'.$_FILES['archivos']['name'];
  10. }
  11. else
  12. {
  13.     echo "Ya existe el directorio.";
  14. }
  15. ?>
  #6 (permalink)  
Antiguo 19/04/2011, 15:44
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Cita:
Iniciado por curmanuel Ver Mensaje
Lo intentare de la forma en que lo dices.
gracias
  #7 (permalink)  
Antiguo 19/04/2011, 15:52
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Gracias por tu respuesta me funciono correctamente, lo que me faltaba era darle un orden a las variables que era lo que no habia hecho.

salu2.
  #8 (permalink)  
Antiguo 20/04/2011, 09:26
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Lo correcto seria utilizar file_exists:

Código PHP:
Ver original
  1. $url = 'url/a/mi/carpeta';
  2.  
  3. if (file_exists($url)) {
  4. echo 'La carpeta existe';
  5. }else {
  6. echo 'La carpeta no existe';
  7. }
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #9 (permalink)  
Antiguo 20/04/2011, 11:19
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Cita:
Iniciado por Nemutagk Ver Mensaje
Lo correcto seria utilizar file_exists:

Código PHP:
Ver original
  1. $url = 'url/a/mi/carpeta';
  2.  
  3. if (file_exists($url)) {
  4. echo 'La carpeta existe';
  5. }else {
  6. echo 'La carpeta no existe';
  7. }
que diferencia hay entre FILE_EXIST Y !IS_DIR? para dejar mas claro el asunto.
  #10 (permalink)  
Antiguo 20/04/2011, 11:37
Avatar de rikardoz  
Fecha de Ingreso: abril-2011
Ubicación: En mi casa
Mensajes: 165
Antigüedad: 13 años
Puntos: 46
Busqueda Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Cita:
Iniciado por curmanuel Ver Mensaje
que diferencia hay entre FILE_EXIST Y !IS_DIR? para dejar mas claro el asunto.
Pues facil:
file_Exist -> comprueba si el archivo o directorio existe o no
is_dir -> verifica si el nombre del archivo dado es un directorio

  #11 (permalink)  
Antiguo 20/04/2011, 13:19
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Cita:
Iniciado por rikardoz Ver Mensaje
is_dir -> verifica si el nombre del archivo dado es un directorio

pero is_dir tambien comprueba si existe.

Devuelve TRUE si el nombre de archivo existe y es un directorio, FALSE si no.

  #12 (permalink)  
Antiguo 20/04/2011, 13:51
Avatar de curmanuel  
Fecha de Ingreso: abril-2011
Ubicación: Medellin
Mensajes: 14
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas con guardar una imagen en el mismo directorio con php

Cita:
Iniciado por rikardoz Ver Mensaje
Pues facil:
file_Exist -> comprueba si el archivo o directorio existe o no
is_dir -> verifica si el nombre del archivo dado es un directorio

lo probe con el file_exist no me. y con el !is_dir y si da.
la verdad no se por que no da con el otro pero de igual manera muchas gracias por ser tan colaboradores.

Etiquetas: directorio
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 16:46.