Ik heb een account bij hosting2go (www.hosting2go.nl) zij hebben php versie 4 en ik heb een website waar ik query strings gebruik maar als ik als url heb bv. index.php?page=home dan doet hij net of dat ?page=home er niet staat weet iemand hier de oorzaak van werkt deze functie niet in php4 of moet ik ergens iets instellen bij hosting2go?
Dan zou de fout waarschijnelijk in je script zitten...
<?php
// array met pagina's
$arr_pages = array('home.html','pag2.html');
// kijk of de opgegeven pagina in de array staat & include
if(in_array($_GET['page'].'.html',$arr_pages)){
include $_GET['page'].'.html';
}
else{
include 'home.html';
}
?>
Ik gok dat op je nieuwe server register_globals uitgeschakeld is, zoals dat in hogere php versies standaard het geval is. En hoogstwaarschijnlijk ga je er in je oude script nog wel van uit dat deze aan staan.
Nop.. Met hosting2go niks mis. Zit er zelf ook en bij mij doet zoiets het wel.
Mijn manier:
<?php
// kijken of ?page= in de url staat (met iets erachter)
if(isset($_GET['page']))
{
// even vereenvoudigen
$p = $_GET['page'];
// in een variabele zetten met extensie
$bestand = $p.".php";
// kijken of het bestaat
if(file_exists($bestand))
{
// zo ja we requiren
require_once($bestand);
}
else
{
// zo nee we laten error.php zien
require_once("error.php");
}
}
else
{
require_once("home.php"); // je homepage
}
?>