Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Replace submit button with graphic 1

Status
Not open for further replies.

electronicmonkey

Technical User
Feb 19, 2007
45
GB
The search module for a CMS that I am presently using has following code. I will like to replace the generic submit button with a graphic (graphic.gif in root folder of site) of my own. Can someone please help me ammend this ? Thanks.
Code:

defined( '_VALID_MOS' ) or die( 'Restricted access' );

$button = $params->get( 'button', '' );
$button_pos = $params->get( 'button_pos', 'left' );
$button_text = $params->get( 'button_text', _SEARCH_TITLE );
$width = intval( $params->get( 'width', 20 ) );
$text = $params->get( 'text', _SEARCH_BOX );
$set_Itemid = intval( $params->get( 'set_itemid', 0 ) );

$output = '<input name="searchword" id="mod_search_searchword" maxlength="20" alt="search" class="inputbox'. $moduleclass_sfx .'" type="text" size="'. $width .'" value="'. $text .'" onblur="if(this.value==\'\') this.value=\''. $text .'\';" onfocus="if(this.value==\''. $text .'\') this.value=\'\';" />';

if ( $button ) {
$button = '<input type="submit" value="'. $button_text .'" class="button'. $moduleclass_sfx .'"/>';
}

switch ( $button_pos ) {
case 'top':
$button = $button .'<br/>';
$output = $button . $output;
break;

case 'bottom':
$button = '<br/>'. $button;
$output = $output . $button;
break;

case 'right':
$output = $output . $button;
break;

case 'left':
default:
$output = $button . $output;
break;
}

// set Itemid id for links
if ( $set_Itemid ) {
// use param setting
$_Itemid = $set_Itemid;
$link = 'index.php?option=com_search&amp;Itemid='. $set_Itemid;
} else {
$query = "SELECT id"
. "\n FROM #__menu"
. "\n WHERE link = 'index.php?option=com_search'"
. "\n AND published = 1"
;
$database->setQuery( $query );
$rows = $database->loadObjectList();

// try to auto detect search component Itemid
if ( count( $rows ) ) {
$_Itemid = $rows[0]->id;
$link = 'index.php?option=com_search&amp;Itemid='. $_Itemid;
} else {
// Assign no Itemid
$_Itemid = '';
$link = 'index.php?option=com_search';
}
}
?>

<form action="<?php echo $link; ?>" method="get">
<div class="search<?php echo $moduleclass_sfx; ?>">
<?php echo $output; ?>
</div>

<input type="hidden" name="option" value="com_search" />
<input type="hidden" name="Itemid" value="<?php echo $_Itemid; ?>" />
</form>

 
From what i can gather, you'll need to change this line:

Code:
 $button = '<input type="submit" value="'. $button_text .'" class="button'. $moduleclass_sfx .'"/>';

To either use an image input type, or use CSS to style the button to have the image. I'd go with the lattes, as it is easier, and requires no extra modification of the PHP code, and you already have a class in place, so would just modify it so it has the image.

Code:
.button{
...
background:URL(path/to/image.jpg');
...
}









----------------------------------
Ignorance is not necessarily Bliss, case in point:
Unknown has caused an Unknown Error on Unknown and must be shutdown to prevent damage to Unknown.
 
many thanks vacunita. However the image still appears in the button (as background) and keeps on repeating even though I have not coded the css to do that . I'd rather go with the php code modification. Of course you can't enter html here right ?

 
Make the button the same size as the image, and set the background image to no repeat:

Code:
.button{
...
width:100px;
height:100px;
background:URL(path/to/image.jpg');
background-repeat:not-repeat;
...
}

Who says i can't enter html here?:
Code:
<input type=image name=mysubmitbutton src="path\to\image.jpg">




----------------------------------
Ignorance is not necessarily Bliss, case in point:
Unknown has caused an Unknown Error on Unknown and must be shutdown to prevent damage to Unknown.
 
Again many thanks. Under pressure the brain turns to jelly.
- words of a wise man :)

 
Just to correct, its not:

Code:
background-repeat:not-repeat;

its

Code:
background-repeat:[red]no[/red]-repeat;


----------------------------------
Ignorance is not necessarily Bliss, case in point:
Unknown has caused an Unknown Error on Unknown and must be shutdown to prevent damage to Unknown.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top