Foros del Web » Programando para Internet » PHP »

crear carpeta usando campo mysql

Estas en el tema de crear carpeta usando campo mysql en el foro de PHP en Foros del Web. Buenos días! Estoy intentando crear una carpeta de nombre "contenido", dentro de otra que crea un dispositivo al conectarne en una tabla mysql. El nombre ...
  #1 (permalink)  
Antiguo 05/06/2014, 04:52
 
Fecha de Ingreso: junio-2014
Mensajes: 101
Antigüedad: 9 años, 10 meses
Puntos: 0
crear carpeta usando campo mysql

Buenos días!

Estoy intentando crear una carpeta de nombre "contenido", dentro de otra que crea un dispositivo al conectarne en una tabla mysql. El nombre de la carpeta creada por el dispositivo coincide con su mac. No ejecuta lo que pretendo ni de lejos...por no hacer, no me da ni error. Estoy empezando con php y estoy aún muy verde...alguien podría decirme en qué fallo??Al menos si el código está bien y es algún fallo 'tonto' tipo comillas, $...

$query = "SELECT MAC FROM dispositivos WHERE id = 1";
$resultado = mysql_query($query);

while ($fila = mysql_fetch_array($resultado)){
if (file_exists("C:/Dispositivos/$fila/contenido/") == False){
mkdir("C:/Dispositivos/$fila/contenido/", 0755);
}else{
die('No pudo crearse la tabla: ' . mysql_error());
}
}

Muchas gracias!
  #2 (permalink)  
Antiguo 05/06/2014, 05:08
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: crear carpeta usando campo mysql

Código PHP:
Ver original
  1. $query = "SELECT MAC FROM dispositivos WHERE id = 1";
  2. $resultado = mysql_query($query);
  3.  
  4. //Solo habrá una fila ya que seleccionas por id luego
  5. //no es necesario el bucle while
  6.  
  7. $fila = mysql_fetch_array($resultado);
  8.  
  9. //fila es un array luego hay que acceder a sus nodos $fila["MAC"]
  10.  
  11. // !file_exists invierte el booleano que retorna la función
  12.  
  13. if (!file_exists("C:/Dispositivos/".$fila["MAC"]."/contenido")){
  14.  
  15. //El tercer parametro permite crear directorios anidados es decir MAC y Contenido
  16.  
  17.     mkdir("C:/Dispositivos/".$fila["MAC"]."/contenido", 0755, true);
  18. }else{
  19.  
  20. //mysql_error como su nombre indica retorna errores de mysql no de qualquier función en este caso mkdir
  21.    
  22.      echo "El directorio ya existia!!!";  
  23.  
  24. }
  25. }

Si no te funciona así, solo se me ocurre que el servidor web no tenga acceso a c:\ y debas mover la estructura a partir de la raiz del servidor web no del disco.

Ojo no se que pasa si C:/Dispositivos/".$fila["MAC"]."/contenido no existe pero C:/Dispositivos/".$fila["MAC"]." ya existe
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 05/06/2014 a las 05:19
  #3 (permalink)  
Antiguo 05/06/2014, 05:45
 
Fecha de Ingreso: junio-2014
Mensajes: 101
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: crear carpeta usando campo mysql

Perfecto!! Había quitado ya el while y seleccionado el nodo, pero se me había pasado concatenar en el directorio!!

Muchisimas gracias! =)

Etiquetas: campo, carpeta, mysql, select, tabla, usando
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 11:50.