Foros del Web » Programando para Internet » PHP »

include + vairable = abrir archivo

Estas en el tema de include + vairable = abrir archivo en el foro de PHP en Foros del Web. Quiero incluir un archivo con un include utilizando dos variables <?php $raiz = "/" $rand = rand(1, 8); include($raiz."incl/".$rand.".html"); ?> en texto i si fuera ...
  #1 (permalink)  
Antiguo 05/06/2010, 08:28
 
Fecha de Ingreso: enero-2010
Mensajes: 57
Antigüedad: 14 años, 3 meses
Puntos: 0
include + vairable = abrir archivo

Quiero incluir un archivo con un include utilizando dos variables

<?php
$raiz = "/"
$rand = rand(1, 8);
include($raiz."incl/".$rand.".html");
?>

en texto i si fuera un enlace seria como:
<a href="/incl/5.html">

Aver si alguien me puede ayudar o vé el error.
No se si me explicado muy bien :S pregunten
__________________
http://www.creaunaweb.es
  #2 (permalink)  
Antiguo 05/06/2010, 08:34
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: include + vairable = abrir archivo

Debes verificar que exista un directorio llamado incl y un archivo llamado 5.html. Lo otro no uses $raiz, solo haz incl/
Código PHP:
Ver original
  1. include("incl/".$rand.".html");
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 05/06/2010, 08:42
 
Fecha de Ingreso: enero-2010
Mensajes: 57
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: include + vairable = abrir archivo

Cita:
Iniciado por abimaelrc Ver Mensaje
Debes verificar que exista un directorio llamado incl y un archivo llamado 5.html. Lo otro no uses $raiz, solo haz incl/
Código PHP:
Ver original
  1. include("incl/".$rand.".html");
Muchas gracias por responder!
Si, intentare hacerte un esquema de los directorios para explicarme mejor

/ root
|
|_incl
| |_>5.html
| |_>6.html
|_Carpeta
|_>archivo.php

Mas o menos seria esto, lo que intento es que des de archivo.php incluir uno de los de dentro del directorio incl aleatoriamente.
Por eso utilizo la variable $raiz que es una que ya tengo definida siempre para hacer que todos los enlaces partan de la raiz / i funcionen todos los enlaces indiferentemente del directorio en el que se encuentren

El problema es que en los archivos que se encuentran en la raiz si que funciona pero en los que estan en alugn directorio no.

Espero haber aclarado un poco mas
__________________
http://www.creaunaweb.es
  #4 (permalink)  
Antiguo 05/06/2010, 08:45
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: include + vairable = abrir archivo

Bueno, necesitas indicar la ruta absoluta, pero la que empieza desde el directorio principal. No la que empieza el directorio de la página web. Algo así
Código PHP:
Ver original
  1. $raiz = $_SERVER['DOCUMENT_ROOT'];
  2. $rand = mt_rand(1,8);
  3. include($raiz."incl/".$rand.".html");
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 05/06/2010, 09:07
 
Fecha de Ingreso: enero-2010
Mensajes: 57
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: include + vairable = abrir archivo

Cita:
Iniciado por abimaelrc Ver Mensaje
Bueno, necesitas indicar la ruta absoluta, pero la que empieza desde el directorio principal. No la que empieza el directorio de la página web. Algo así
Código PHP:
Ver original
  1. $raiz = $_SERVER['DOCUMENT_ROOT'];
  2. $rand = mt_rand(1,8);
  3. include($raiz."incl/".$rand.".html");
Sigue sin funcionar
De todos modos, el problema que tengo es que no puedo usar la variable $_SERVER['DOCUMENT_ROOT'] ya que para desarrollar la web lo hago en un servidor local. Luego en la raiz hay una carpeta "miweb" i por eso utilizo la variable $raiz = "/miweb/"; porque los archivos no estan realmente en la raiz.
En el servidor real si que estan en la raiz, por lo que al subir los archivos solo tengo que modificarlo por $raiz = "/";

un poco complicado... pero toda una historia jajaja
__________________
http://www.creaunaweb.es
  #6 (permalink)  
Antiguo 05/06/2010, 09:09
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: include + vairable = abrir archivo

No importa que servidor uses, con la variable $_SERVER solo tienes que al pasar al servidor indicar el directorio adicional. Pero en tu caso te recomiendo usar rutas absolutas y veas si se cumple esa ruta imprimiéndolo en pantalla.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 05/06/2010, 09:11
 
Fecha de Ingreso: enero-2010
Mensajes: 57
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: include + vairable = abrir archivo

Luego, otra pregunta relacionada que tambien podria servir para solucionar este problema:
Con un include(); añades todo el contenido de un archivo, hay alguna forma de añadir solo unas lineas concretas?

Por ejemplo:
archivo.txt

// Primera linea
Texto texto texto
Texto texto texto
// Cuarta linea
Texto texto texto
Texto texto texto

Añadir solo las lineas 2 i 3
__________________
http://www.creaunaweb.es
  #8 (permalink)  
Antiguo 05/06/2010, 09:15
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: include + vairable = abrir archivo

Eso lo puedes lograr mejor usando las funciones de filesystem.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #9 (permalink)  
Antiguo 05/06/2010, 09:46
 
Fecha de Ingreso: enero-2010
Mensajes: 57
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: include + vairable = abrir archivo

Muchisimas gracias por las contestaciones
__________________
http://www.creaunaweb.es

Etiquetas: include
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 09:09.