Foros del Web » Programando para Internet » PHP »

Web modular doble?

Estas en el tema de Web modular doble? en el foro de PHP en Foros del Web. Hola, tengo una web modular que utiliza este codigo: Código PHP: <? $ver = $_GET [ 'ver' ]; switch ( $ver ) {    case  inicio :        include( ...
  #1 (permalink)  
Antiguo 31/05/2010, 23:56
 
Fecha de Ingreso: mayo-2010
Mensajes: 10
Antigüedad: 13 años, 10 meses
Puntos: 1
Web modular doble?

Hola, tengo una web modular que utiliza este codigo:

Código PHP:
<?

$ver
=$_GET['ver'];

switch (
$ver) {

   case 
inicio:

       include(
"default.php");

       break;

   case 
noticias:

       include(
"noticias.php");

       break;

   case 
info:

       include(
"informacion.php");

       break;

   case 
contacto:

       include(
"contacto.php");

       break;

   case 
feed2:

          include(
"enviar.php");

       break;

   case 
mails:

          include(
"mails.php");

       break;       

   default:

       include(
"default.php"); 


?>
entonces, la URL queda: ..../index.php?ver=noticias
pero quiero hacer: ..../index.php?ver=noticias&id=1
lo estoy haciendo de esta manera, pero no sirve, porque me sale que dentro de la carpeta index.php no hay nada, y claro, si no es una carpeta:
Código PHP:
        <?

$ver
=$_GET['ver'];

switch (
$ver) {

   case 
inicio:

       include(
"default.php");

       break;

   case 
noticias:

       include(
"noticias.php");

       break;

   case 
info:

       include(
"informacion.php");

       break;

   case 
contacto:

       include(
"contacto.php");

       break;

   case 
feed2:

          include(
"enviar.php");

       break;

   case 
mails:

          include(
"mails.php");

       break;       

   default:

       include(
"default.php"); 


$id=$_GET['id'];
switch (
$id) {
    case 
1:
        include(
"new1.php");
        break;
    case 
2:
        include(
"new2.php");
        break;
}

?>
como hago? :D espero una rta. desde ya muchas gracias! :D
  #2 (permalink)  
Antiguo 01/06/2010, 00:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Web modular doble?

no tiene mucho sentido lo que planteas... ya que el código esta mas-o-menos bien escrito...

bueno, ¿que o quien te dice que la carpeta no existe??

y entonces no tienes un error de PHP....
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 01/06/2010, 10:37
 
Fecha de Ingreso: mayo-2010
Mensajes: 10
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Web modular doble?

Jaja, muy raro, saque todo el codigo, lo volvi a poner y funciona .. tal vez habia algo mal puesto. Ahora el problema es el siguiente, hago click en la seccion Noticias (index.php?ver=noticias), bien, veo las 2 noticias, cada una dice "ver más", y esta linkeado a index.php?ver=noticias&id=1 o 2. El problema ahora es que cuando veo las noticias 1 o 2, siempre queda arriba cargada la seccion Noticias, con los "..ver mas"..No se si me explico..

esta es la URL: http://mol.celularesfeker.com

gracias!
  #4 (permalink)  
Antiguo 01/06/2010, 13:35
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: Web modular doble?

Es algo muy evidente, si vuelves a pasar la variable ver=noticias el switch la evalua y raliza la acción correspondiente, en este caso hace el include("noticias.php").

Deverias poner otra condición ej:

.....si ademas de la variable 'ver' envio ó recibo la variable 'id' no muestres las noticias.....

Este problema puedes desarrollarlo de diferentes formas si entiendes su lógica .

Saludos
__________________
Tu álbum de cromos online!!

Última edición por santris; 01/06/2010 a las 13:42
  #5 (permalink)  
Antiguo 01/06/2010, 14:32
 
Fecha de Ingreso: febrero-2010
Mensajes: 39
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Web modular doble?

usa un archivo .php para listar las noticias (noticias.php) y otro para ver la noticia (ver_noticia.php)

es asi de facil, desde nocitias.php linkeas a ver=ver_noticia.php&id=2;

otra forma es usar el isset, evalua si el isset de id esta o no, en caso que no este, que liste las noticias, en caso que si este, que muestre la noticia a la id correspondiente.

Yo por limpieza prefiero la primera opcion, tu sabras que prefieres

c ya
  #6 (permalink)  
Antiguo 01/06/2010, 15:37
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Web modular doble?

Código PHP:
Ver original
  1. <?php
  2. $ver=(isset($_GET['ver'])) ? $_GET['ver'] : '';;
  3. $id=(isset($_GET['id'])) ? $_GET['id'] : 0;
  4. switch ($ver) {
  5.    case inicio:
  6.        include("default.php");
  7.        break;
  8.    case noticias:
  9.        // revisa si vas a mostrar el indice de noticias o se selecciono una noticia
  10.        if($id == 0) {
  11.             include("noticias.php");
  12.        } else {
  13.            // Solo necesitarias revisar si existe el archivo de noticia antes de tratar de incluirlo
  14.            include "new{$id}.php";
  15.        }
  16.        break;
  17.    case info:
  18.        include("informacion.php");
  19.        break;
  20.    case contacto:
  21.        include("contacto.php");
  22.        break;
  23.    case feed2:
  24.           include("enviar.php");
  25.        break;
  26.    case mails:
  27.           include("mails.php");
  28.        break;      
  29.    default:
  30.        include("default.php");
  31. }
__________________
- León, Guanajuato
- GV-Foto
  #7 (permalink)  
Antiguo 01/06/2010, 16:05
 
Fecha de Ingreso: mayo-2010
Mensajes: 10
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Web modular doble?

Muchas gracias santris, Dunnow y Triby. Pude solucionarlo con el ultimo codigo que postearon :D

Etiquetas: doble, modular
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 23:02.