Foros del Web » Creando para Internet » Herramientas y Software »

rutas de ficheros en netbeans

Estas en el tema de rutas de ficheros en netbeans en el foro de Herramientas y Software en Foros del Web. Hola, una pregunta sencilla para quienes trabajen con Netbeans. En un require '...' ¿Cómo escribo la ruta? Hasta ahora estaba haciendo, por ejemplo: require '../config.php'; ...
  #1 (permalink)  
Antiguo 27/02/2011, 16:53
 
Fecha de Ingreso: febrero-2011
Mensajes: 53
Antigüedad: 13 años, 10 meses
Puntos: 2
rutas de ficheros en netbeans

Hola, una pregunta sencilla para quienes trabajen con Netbeans.

En un require '...' ¿Cómo escribo la ruta?

Hasta ahora estaba haciendo, por ejemplo:
require '../config.php';

Pero me he dado cuenta de que si este archivo va a ser incluido desde ficheros en ubicaciones distintas, usar la ruta relativa no es bueno.

¿Cómo puedo referirme a un fichero que esté en la carpeta principal del proyecto? Gracias.
  #2 (permalink)  
Antiguo 27/02/2011, 17:21
 
Fecha de Ingreso: diciembre-2009
Ubicación: dirname(__FILE__)
Mensajes: 149
Antigüedad: 15 años
Puntos: 11
Respuesta: rutas de ficheros en netbeans

Hola, una buena solución es hacer una variable estática en el archivo principal, luego llamas a esa variable y concatenas el resto de la ruta, por ejemplo:

index.php
Código PHP:
Ver original
  1. <?php
  2. /**
  3.  * La carpeta base del proyecto.
  4.  */
  5. define('CARPETA_BASE', dirname(__FILE__));
  6.  
  7. /**
  8.  * El separador de directorios.
  9.  */
  10. define('S', DIRECTORY_SEPARATOR);
  11.  
  12. // Resto del código...
  13.  
  14. ?>

Luego, si deseas incluir a un archivo haces algo como lo siguiente:
index.php
Código PHP:
Ver original
  1. <?php
  2.  
  3. // código...
  4.  
  5. /**
  6. * Incluye el archivo includes/menus/superior.php
  7. **/
  8. include CARPETA_BASE . S . 'includes' . S . 'menus' . S . 'superior.php';
  9.  
  10. ?>

En el caso de que en el archivo que está en la ruta "includes/menus/superior.php" deseas incluir un archivo en la carpeta superior, haces lo mismo desde CARPETA_BASE:

includes/menus/superior.php
Código PHP:
Ver original
  1. <?
  2.  
  3. include CARPETA_BASE . S . 'biblioteca' . S . 'Menu.php';
  4.  
  5. ?>

etc.

Te recomiendo que revises las función dirname.

Saludos
__________________
Estreno blog ~ DesarrolladorWeb.cl :)
  #3 (permalink)  
Antiguo 28/02/2011, 10:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Tema movido desde PHP a Editores Web
  #4 (permalink)  
Antiguo 01/03/2011, 09:52
 
Fecha de Ingreso: febrero-2011
Mensajes: 53
Antigüedad: 13 años, 10 meses
Puntos: 2
Respuesta: rutas de ficheros en netbeans

El problema es que si luego quiero incluir el superior.php no desde index.php sino desde registro.php, ¿Cómo puedo acceder a ese define? Porque mi index.php y registro.php son archivos independientes, uno no se incluye al otro...
  #5 (permalink)  
Antiguo 15/03/2011, 13:27
 
Fecha de Ingreso: febrero-2011
Mensajes: 53
Antigüedad: 13 años, 10 meses
Puntos: 2
Respuesta: rutas de ficheros en netbeans

Lo siento pero no sé cómo hacerlo...

Yo tengo los siguientes archivos y carpetas:
  • index.php
  • comun.php
  • code/codigo.php

¿Cómo hago para incluir en codigo.php el archivo comun.php?

No sé dónde colocar lo que me dices del define con CARPETA_BASE.
  #6 (permalink)  
Antiguo 22/03/2011, 08:42
 
Fecha de Ingreso: febrero-2011
Mensajes: 53
Antigüedad: 13 años, 10 meses
Puntos: 2
Respuesta: rutas de ficheros en netbeans

¿No hay respuesta?
  #7 (permalink)  
Antiguo 22/03/2011, 08:53
 
Fecha de Ingreso: febrero-2011
Mensajes: 53
Antigüedad: 13 años, 10 meses
Puntos: 2
Respuesta: rutas de ficheros en netbeans

Vale, ya he probado lo del define. El problema que tengo es que no puedo usar ni rutas relativas ni rutas absolutas con un define.

NO PUEDO USAR RUTAS RELATIVAS
porque desde home.php y desde include/archivo.php incluyo include/incluyeme.php que a su vez incluye a include/db/connect.php. Si llamo desde niveles distintos a lo mismo, me falla, porque tanto include como require son una especie de copy&paste.

NO PUEDO USAR RUTAS ABSOLUTAS
con un define, porque el código lo compartimos en varios equipos que ejecutan el proyecto en rutas distintas:
> http://localhost/proyecto/
> http://localhost/workspace/proyecto
> etc

Espero me puedan ayudar.
  #8 (permalink)  
Antiguo 07/04/2011, 03:24
 
Fecha de Ingreso: febrero-2011
Mensajes: 53
Antigüedad: 13 años, 10 meses
Puntos: 2
Respuesta: rutas de ficheros en netbeans

Me es muy necesario, por favor, si pueden echarme una mano (o las dos) lo agradeceré muchísimo.
  #9 (permalink)  
Antiguo 07/04/2011, 18:33
 
Fecha de Ingreso: diciembre-2009
Ubicación: dirname(__FILE__)
Mensajes: 149
Antigüedad: 15 años
Puntos: 11
Respuesta: rutas de ficheros en netbeans

Cita:
porque desde home.php y desde include/archivo.php incluyo include/incluyeme.php que a su vez incluye a include/db/connect.php. Si llamo desde niveles distintos a lo mismo, me falla, porque tanto include como require son una especie de copy&paste.
Desde home.php:
include 'include/incluyeme.php'

Desde include/archivo.php:
include 'incluyeme.php';

Desde include/incluyeme.php:
include 'db/connect.php';

etc.

Da lo mismo si se usa Netbeans, Komodo, NotePad++, etc. PHP funciona así, si deseas incluir un archivo que está en la misma carpeta poner sólo el nombre del archivo más la extensión. Si deseas incluir un archivo que está en una carpeta padre pones '../nombre-archivo.php' o bien dirname(__FILE__) . '/nombre-archivo.php';.

Antes de emprender un proyecto se debe establecer una cierta política sobre como ordenar las carpetas, lo que te sugerí es que la aplicación tenga una única entrada 'index.php' desde la que se incluyen los demás archivos, si deseas hacerlo de otra forma debes tener en cuenta incluir cada archivo con una ruta relativa. En tal caso no importa si se esté en www/proyecto/ o www/dir/proyecto, porque se accede a las carpetas de forma relativa a la posición actual.

Espero que solucionen rápidamente su problema.

Saludos.
__________________
Estreno blog ~ DesarrolladorWeb.cl :)

Etiquetas: editores-web, ficheros, netbeans, rutas
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 20:25.