Goal:
Trying to get a rollover button state to remain “ON” when URL equals “enhanced.php”.
Problem:
Button state does not remain “on” when URL equals “enhanced.php”.
(Button acts correctly as a rollover)
sidemenu.php sidemenu.php is used as a PHP include on all pages (I don’t know if that makes a difference
<?php
$script = $_SERVER['SCRIPT_NAME'];
//Set the default state to OFF and only turn ON if we are on the current URL.
$enhancedstate = OFF;
$pos = strpos($script, "enhanced.php");
if($pos === true) {
$enhancedstate = ON;
}
?>
<div class="sideMenu">
<a href="enhanced.php"
onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image1','','/images/Button_ON_01.gif',1)">
<img src="/images/Button_<? echo $enhancedstate; ?>_01.gif" name="Image1" border="0">
</a>
Anyone see any reason why the button state does not stay “ON” when the current URL is “enhanced.php”.
TIA
strposreturns a int on success, and FALSE on failure.Change
if($pos === true)toif($pos !== false).The
===operator compares values and types. So, on successstrposreturns an int, which may have the same value as TRUE, but it’s not the same type.EDIT: As others have said, you should change:
$enhancedstate = OFFto$enhancedstate = 'OFF'PHP is very forgiving, and will let you use un-quoted strings, but you should try not to, unless ON and OFF are actually constants.