IPB page denetleyici

2 Cevap

Herkes Invision Power Board aşağıdaki gibi onların adresler yapar nasıl bilir?

index.php?showuser=349
index.php?showtopic=83
index.php?showforum=9

and just pages:
index.php?act=register
index.php?act=about

ve benzerleri. Onlar bunu nasıl? Ben şimdi yaptığım gibi bunu yapmazsanız emin değilim:

if (isset($_GET['showtopic'])){
include('viewtopic.php');
else if (isset($_GET['showuser'])){
include('viewuser.php');
}

else if (isset($_GET['act']) && $_GET['act'] == 'register'){
include('register.php');
} 

else if (isset($_GET['act']) && $_GET['act'] == 'about'){
include('about.php');
}
else 
{
echo "page not found.";
}

2 Cevap

Yapmak "eylemi =" şey ifadeleri eğer büyük bir zincir gerekmez. Örneğin, bu gibi yapabilirdik:

$pages = array('register', 'about', ...);

if (in_array($_GET['act'], $pages)) {
    include $_GET['act'].'.php';
} else {
    // display an error
}

Belki bir diziye eklemek olabilir.

$pages = array('showtopic', 'showuser');

foreach ($pages as $page) {
if (intval($_GET[$page])) {
include("$page.php");
}
}