Páginas: index.php?id=1&cat=2

Iniciado por Fraannn, 6 Julio 2008, 03:53 AM

0 Miembros y 1 Visitante están viendo este tema.

Fraannn

HOla, queria saber como hacer que en vez de que aparezca:

miweb.com/descargas.php
miweb.com/faq.php

Aparezca:

miweb.com/index.php?id=1
miweb.com/index.php?id=2

y para las descargas:

miweb.com/descargas.php?id=1&cat=2 o algo similar

.. Encontré varios pero lo pongo en el codigo y no me funciona, no me manda hacia la otra sección. Los que usé tenian la funcion switch creo..



#!drvy

#1
Código (php) [Seleccionar]
<?php
error_reporting
(0); // para que no muestre errores...
$pagina $_GET['pagina']; // indentificacion (como el ?id)
if ($pagina == "inicio"){ echo "Esto es inicio"; } 
elseif (
$pagina == "descargas"){ echo "Descargar: Super Mario Bros.exe xD"; }
elseif (
$pagina == "marijuana"){ echo "FUMAS DEMASIADO AVER SI TE MUERES ajjax xD"; }
elseif (
$pagina == "hacker"){ echo "Asi que quieres ser hacker ? tienes mucho por soñar todavia xD"; } // xD
else { echo "Seleciona una opcion"; }
?>

Obiamente los menajes no tienen nade que ver con la realidad...es que me aburia un poco xD

Bueno pues eso solo que cambias el echo por include por ejemplo:

Código (php) [Seleccionar]
elseif ($pagina == "descargas"){ include ("descargas.php"); }

y obiamente la final (el "else" la cambias por  include('tupaginaprincipal.html');



PD: Ten cuidado con los includes (RFI's)

Saludos

Fraannn



Fraannn

Cita de: BadStupidMonkey™ en  6 Julio 2008, 07:14 AM
Código (php) [Seleccionar]
<?php
error_reporting
(0); // para que no muestre errores...
$pagina $_GET['pagina']; // indentificacion (como el ?id)
if ($pagina == "inicio"){ echo "Esto es inicio"; } 
elseif (
$pagina == "descargas"){ echo "Descargar: Super Mario Bros.exe xD"; }
elseif (
$pagina == "marijuana"){ echo "FUMAS DEMASIADO AVER SI TE MUERES ajjax xD"; }
elseif (
$pagina == "hacker"){ echo "Asi que quieres ser hacker ? tienes mucho por soñar todavia xD"; } // xD
else { echo "Seleciona una opcion"; }
?>

Obiamente los menajes no tienen nade que ver con la realidad...es que me aburia un poco xD

Bueno pues eso solo que cambias el echo por include por ejemplo:

Código (php) [Seleccionar]
elseif ($pagina == "descargas"){ include ("descargas.php"); }

y obiamente la final (el "else" la cambias por  include('tupaginaprincipal.html');



PD: Ten cuidado con los includes (RFI's)

Saludos



Que hago mal?.. puse el código en un archivo "links.php" y desde el index le puse <?php include("links.php"); ?> ..


Código links.php

<?php
error_reporting
(0);
$pagina $_GET['id'];
if (
$pagina == "1"){ include("descargas.php"); } 
elseif (
$pagina == "2"){ include("contacto.php"); }
elseif (
$pagina == "3"){ include("faq.php"); }
elseif (
$pagina == "4"){ include("weblinks.php"); }
else { include(
"index.php"); }
?>



y los links los pongo así, por ejemplo en el index.php que es donde hice la prueba:


<map name="Map">
<area shape="circle" coords="492,78,69" href="index.php">
<area shape="rect" coords="184,32,270,66" href="index.php">
<area shape="rect" coords="183,65,323,90" href="index.php?id=1">
<area shape="rect" coords="185,89,392,115" href="serviciotecnico.php">
<area shape="rect" coords="185,113,351,144" href="desbloqueos.php">
<area shape="rect" coords="718,29,843,66" href="index.php?id=2">
<area shape="rect" coords="620,63,839,90" href="marcasymodelos.php">
<area shape="rect" coords="714,89,839,112" href="index.php?id=4">
<area shape="rect" coords="763,111,840,144" href="index.php?id=3">
</map>


Pero lo único que hace es "actualizarme" el index.php .. :S no entiendo porque, todos los códigos que probé me hacen lo mismo :S


#!drvy

Hola,

No hagas que el index se incluya a si mismo  :xD :xD no tiene sentido  :laugh:.

digamos que tienes una pagina (links.php)
Código (php) [Seleccionar]
<?php
error_reporting
(0); // para que no muestre errores...
$pagina $_GET['id']; // indentificacion
if ($pagina == "1"){ include ("descargas.php"); } 
elseif (
$pagina == "2"){ include ("faq.php"); }
elseif (
$pagina == "3"){ include ("weblinks.php"); }
elseif (
$pagina == "4"){ include ("contacto.php"); } // xD
else { include ("inicio.php"); } // que NO sea la misma pagina donde esta el codigo.
?>


en el index.php tendriamos
Código (php) [Seleccionar]
<?php include ("links.php"); ?>

y en las demas paginas lo que te de la gana xD...

Un ejemplo de un esquema...

                          index      <-- pagina principal
                         /    \
                  link1    link2  <-- link1 y link2 incluyen el mismo codigo que links.php
                    /            \
               link(1)2       link(2)2   <-- para  lamar a estos el enlace deber ser algo asi: index?id=1&id2=1 (siendo "id2" la indentificaion del "link1")"




Saludos

Fraannn

 
<?php
error_reporting
(0); // para que no muestre errores...
$pagina $_GET['id']; // indentificacion
if ($pagina == "1"){ include ("descargas.php"); } 
elseif (
$pagina == "2"){ include ("faq.php"); }
elseif (
$pagina == "3"){ include ("weblinks.php"); }
elseif (
$pagina == "4"){ include ("contacto.php"); } // xD
else { include ("inicio.php"); } // que NO sea la misma pagina donde esta el codigo.
?>



en la anteúltima línea que dice: else { include ("inicio.php"); }     "inicio.php" sería la página principal? mi página principal se llama "index.php", o sea, que la abre cualquier navegador como predeterminado, no? si yo pongo
http://www.misitio.com es lo mismo que yo ponga http://www.misitio.com/index.php ..entonces decis que tengo que poner inicio.php, y que hago con el index.php?

Perdón por mi ignorancia  :-( es que recién estoy empezando a tratar de programar algo, y bueno x)



#!drvy

El en index.php puedes poner cualquier cosa pero se trata de que no se repita...por ejemplo podrias poner otos codigos php para que detecten de donde vienen los visitanes o cualquier cosa....ademas ten en cuenta que el index debe llevar el include del links




Saludos

olivarra1

oye, yo esto lo hago de esta manera:

tengo unos archivos en php, digamos pagina1.php, pagina2.php y pagina3.php

y en el index.php tengo esta parte de codigo:

$pagina = $_GET['Pagina'];
require($pagina.".php");


y ya ta :D

de esta manera, si quiero acceder a la pagina 1 seria la direccion: index.php?Pagina=pagina1, la 2, index.php?Pagina=pagina2.

Si lo que quieres hacer es hacerlo para id's entonces antes del require pones un if:

if ($pagina == 1) {
  $pagina = "usuarios";
}elseif ($pagina == 2) {
  $pagina = "registrar";
}elseif ($pagina == 3) {
  $pagina = "verpost";
}


Espero que te haya servido :D

olivarra1

#!drvy

Cita de: olivarra1 en  8 Julio 2008, 17:00 PM
$pagina = $_GET['Pagina'];
require($pagina.".php");


Pero a tu modo cualquiera podria ejecutar cualquier archivo (php) dentro del servidor...
Eso es una razon de INseguridad siendo $pagina una variable y llamarla directamente...


Saludos