|
Posted by ninja on 08/09/06 07:46
Matt wrote:
> I have an issue when trying to use an image type Submit for a search.
>
> The code below works fine in Firefox 1.5.0.6 but not in IE7 Beta 3
>
> <form method="post" action="<?php echo $PHP_SELF?>">
> Search Edinburgh
>
> <!--<input type="Submit" name="search" value="Search">-->
> "Search" button commented out, works in both IE7 Beta 3 and Firefox 1.5.0..6
>
> <input type="Text" name="srchtxt" value="Enter Search Text">
>
> <input type="image" src="images/search.gif" name="search">
> "Search" image works in Firefox 1.5.0.6 but not IE7 Beta 3
>
> </form>
>
> <?php
> if ($_POST['search']) {
>
> $srchtxt=$_POST["srchtxt"];
> echo "Results for \"$srchtxt\"<br /><br />";
> include ("../../include/search.php");
> } else {
> include ("../../include/show.php");
> }
> ?>
>
> It seems the code isn't making it into the true part of the if loop so is
> always executing the else clause.
>
> Any ideas?
>
> Regards
> Matt
>
>
>
> "I'm an idealist. I don't know where I'm going, but I'm on my way." - Carl
> Sandburg http://clicktowalk.com Page design © Matthew McCabe -
> http://mattmadethis.com Site hosted by Xeriom Networks -
> http://xeriom.net/in/1019
Hello,
When you use submit type=image, IE doesn't send the name properly.
Instead, it sends x and y coordinates with the name. So, to use
graphical submit for IE, you should test for $_POST["{$name}_x"] and/or
$_POST["{$name}_y"]. In your case, that would be something like:
<form ...>
....
<input type="image" src="images/search.gif" name="search">
</form>
<?php
// !!! This is the changed line:
if ($_POST['search'] || ($_POST['search_x'] &&
$_POST['search_y'])) {
$srchtxt=$_POST["srchtxt"];
echo "Results for \"$srchtxt\"<br /><br />";
include ("../../include/search.php");
} else {
include ("../../include/show.php");
}
?>
Hope this helps,
Vladislav
Navigation:
[Reply to this message]
|