Hola, tengo un problema que no puedo resolver, me pueden ayudar?
esta url:
index.php?mod=articulo1&idioma=es
con mod_rewrite me queda así:
/articulo1/es/
Lo que no puedo lograr es agregar subcategorías. Los articulos se guardan en la carpeta: /modulos/articuloN.php y yo quisiera guardar algunos en la carpeta: /modulos/categoriaN/articuloN.php
el index.php llama a un config.php que indica en la variable $conf un array de 'titulo' , 'archivo' y 'layout'
en 'archivo' es donde se pone la ruta, ej: /modulos/articuloN.php/
pero si pongo: /modulos/categoriaN/articuloN.php lo que hace el navegador me muestra el articuloN.php (y no categoriaN/articuloN.php) . como que no puedo usar el caracter '/' y tengo que usar '-' (guión).
y la pregunta era esa, si hay alguna manera modificando algo de usar '/' en lugar del guión.
/seccion1/articulo1/es/ en lugar de /seccion1-articulo1/es/
Saludos
claro que si... pero si pones el code que estas usando seria mas facil que inventarme el orden
salu2
gracias Nakpanzer :D!! el código:
index.php:
error_reporting(E_ALL);
include('conf.php');
if (!empty($_GET['mod']))
$modulo = $_GET['mod'];
else
$modulo = MODULO_DEFECTO;
if (empty($conf[$modulo]))
$modulo = MODULO_DEFECTO;
if (empty($conf[$modulo]['layout']))
$conf[$modulo]['layout'] = LAYOUT_DEFECTO;
// IDIOMA
$idiomaActual = 'es';
if(isset($_GET['idioma'])){
setcookie ("idioma", $_GET['idioma'], time () + 7*24*60*60);
$idiomaActual = $_GET['idioma'];
}
elseif(isset($_COOKIE['idioma'])){
if(file_exists("lang/".$_COOKIE['idioma'].".php")){
$idiomaActual = $_COOKIE['idioma'];
}
}
include "lang/".$idiomaActual.".php";
//////////////////////////////////////
$path_layout = LAYOUT_PATH.'/'.$conf[$modulo]['layout'];
$path_modulo = MODULO_PATH.'/'.$conf[$modulo]['archivo'];
if (file_exists($path_layout))
include( $path_layout );
else
if (file_exists( $path_modulo ))
include( $path_modulo );
else
die('Error al cargar el módulo <b>'.$modulo.'</b>. No existe el archivo <b>'.$conf[$modulo]['archivo'].'</b>');
conf.php:
define('MODULO_DEFECTO', 'Inicio');
define('LAYOUT_DEFECTO', 'layout_simple.php');
define('LAYOUT_COLOR', 'layout_color.php');
define('MODULO_PATH', realpath('./modulos/'));
define('LAYOUT_PATH', realpath('./layouts/'));
$idiomaActual = 'es';
if(isset($_GET['idioma'])){
setcookie ("idioma", $_GET['idioma'], time () + 7*24*60*60);
$idiomaActual = $_GET['idioma'];
}
if ($idiomaActual == 'es') {
$conf['Inicio'] = array(
'titulo' => 'Inicio',
'archivo' => 'espanol/inicio.php',
'layout' => LAYOUT_DEFECTO );
$conf['articulo1'] = array(
'titulo' => 'Artículo 1',
'archivo' => 'espanol/articulo1.php',
'layout' => LAYOUT_DEFECTO );
$conf['articulo2'] = array(
'titulo' => 'Artículo 2',
'archivo' => 'espanol/articulo2.php',
'layout' => LAYOUT_DEFECTO );
$conf['seccion1/articulo11'] = array(
'titulo' => 'Sección 1 - Artículo 1',
'archivo' => 'espanol/seccion1/articulo1.php',
'layout' => LAYOUT_DEFECTO );}
.htaccess
RewriteEngine on
RewriteRule ([^/]+)/([^/]+)\/$ /index4.php?mod=$1&idioma=$2
espero se pueda hacer algo por ese guión......
hola, nunca me toman en serio. :-[
Eso no es cierto..
Alguien vendra ya veras...
Yahooo!!!!
Gracias Saludos