Archief - PHP: probleem met $_SERVER['REQUEST_URI']

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

KoenDK

Legacy Member
PHP:
		<?php
			$url = $_SERVER['REQUEST_URI'];
			echo $url;
			$compare = "http://www.onzewebsite.com/index.php?option=com_content&amp;Itemid=54&id=2&lang=nl&sect;ionid=2&amp;task=category";

			if  ( $url == $compare)
				{ echo "het werkt";
				}

		?>

deze (basis) code werkt niet, iemand enig idee? ik dacht dat het aan de special chars lag, daarom heb ik & vervangen door &amp; en § door &sect; maar blijkbaar niet

nochtans ik doe een echo en vergelijk dan eigenlijk gewoon letterlijk wat ik als echo krijg... :eek: wtf?

echo "het werkt" werkt dus niet ondanks dat ik wel degelijk op die url zit :)
ps : ik gebruik joomla en artioJoomSEF, waardoor de url's er mooier uitzien, maar als ik de gestructureerde url ga vergelijken lukt het ook niet!

KoenDK

Legacy Member
SveltestSword zei:
echo eens $_SERVER['REQUEST_URI']...

dat doe ik toch? :wtf:
dan krijg ik trouwens het volgende te zien:


PHP:
http://www.onzewebsite.com/index.php?option=com_content&amp;Itemid=54&id=2&lang=nl&sect;ionid=2&amp;task=category



daarom dat ik écht niet begrijp waarom dit niet lukt

KoenDK

Legacy Member
volgens u zou het dus moeten werken indien ik het volgende gebruik

PHP:
$compare = "/index.php?option=com_content&amp;Itemid=54&id=2&lang=nl&sect;ionid=2&amp;task=category";

niet dus :sad:

infinium.be

Legacy Member
Doe eens:
<?php
print $_SERVER['REQUEST_URI'] . "<br />" . $compare;
?>

en vergelijk zelf om zo de fout op te sporen.

Vincent Celis
www.infinium.be

UPDATE: De url die $_SERVER["REQUEST_URI"] weergeeft is zonder de html entity &amp; Wanneer je al de &amp; 's omvormt naar & in $compare zou het moeten werken

KoenDK

Legacy Member
mja, die print opdracht geeft dus 2 maal exact hetzelfde hé :)
ik versta er niets van

echo $_SERVER['REQUEST_URI']
echo $compare
echo $url


dit geeft op mijn scherm 3 maal dezelfde output :wtf:



en toch werkt dit deel niet :

PHP:
<?php 
$url = $_SERVER['REQUEST_URI'];
$compare = "http://www.onzewebsite.com/index.php?option=com_content&Itemid=54&id=2&lang=nl§ionid=2&task=category"; 

if  ( $url == $compare) 
      { echo "het werkt"; 
}
?>


:confused:

infinium.be

Legacy Member
Wat je wilt doen lijkt me niet echt de beste manier. Als ik het goed begrijp wil je een actie uitvoeren als men op die pagina zit. Ik zou gewoon nakijken of het de juiste $_GET variabelen zijn.

Als je mij wat meer code geeft krijg ik er misschien meer zicht in want wat je doet is vrij zinloos en is daar ook helemaal niet voor gemaakt.

KoenDK

Legacy Member
als een user op een bepaalde pagina zit (*click) moet er een bepaalde tekst tevoorschijn komen,
dus gewoon een echo, geen actie
ik ben nochtans dichtbij hoor...

anyway, als je een andere methode kent...


(background: joomla component probleem ;))

infinium.be

Legacy Member
als ze bv op de volgende pagina zitten:
http://www.mydomain.com/?page=testpage
dan kan je in je php document:

<?php
if($_GET['page'] == "testpage") {
print "this is the page " . $_GET['page'] . "<br/>";
}
?>

Lijkt me een pak gemakkelijker en portabeler.

KoenDK

Legacy Member
oké, het werkt!
ik moet dus kijken naar de html broncode van de output van $_SERVER['REQUEST_URI'];
en niet naar wat ik op het scherm te zien kreeg...
als ik die ga vergelijken met die if, kan ik mijn doel bereiken

we leren bij!

infinium.be

Legacy Member
KoenDK zei:
oké, het werkt!
ik moet dus kijken naar de html broncode van de output van $_SERVER['REQUEST_URI'];
en niet naar wat ik op het scherm te zien kreeg...
als ik die ga vergelijken met die if, kan ik mijn doel bereiken

we leren bij!

Als je hetgeen gebruikt wat ik bij mijn vorige post zei mag je die REQUEST_URI gewoon vergeten? Maar het kan zijn dat ik je verkeerd snap.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan