Jump to content

How do I get radio buttons to work with IE6???


rgrne

Recommended Posts

Note: I have posted this on the HTML forum too, since it probably has something to do with the way that IE6 interprets HTML, but I'm not entirely sure, so here's another post in the PHP section...

I just noticed that a group of radio buttons in a website I am developing don't work with Internet Explorer 6.  They work fine with IE5, Mozilla, and Firefox.  The only references to this problem that I have been able to find are related to Javascript and they present work arounds that use Javascript.  But I am not using Javascript, just PHP and HTML. Are there any options to work around this using just HTML or PHP?

This is the code that I am using. The PHP is just being used to print HTML script.  These lines occur inside a for loop that changes the value of  $entry2 for each button.

print "<tr align=\"center\" valign=\"middle\">"; 
      print "<td><input type=\"radio\" name=\"game\"  value=\"$entry2\" /></td>";
      print "<td>$entry1</td>";
      print "<td>$entry2</td>";
      print "<td>$entry3</td>";
      print "<td>$entry4</td>";   
      print "<td><input type=\"hidden\" name=\"gamepass\" value=\"$entry5\" /></td>";
      print "</tr>";

I also tried being more XHTML complient by including an ID tag that was different for each button, but to no avail:

print "<tr align=\"center\" valign=\"middle\">"; 
      print "<td><input type=\"radio\" name=\"game\" id=\"$entry2\" value=\"$entry2\" /></td>";
      print "<td>$entry1</td>";
      print "<td>$entry2</td>";
      print "<td>$entry3</td>";
      print "<td>$entry4</td>";   
      print "<td><input type=\"hidden\" name=\"gamepass\" value=\"$entry5\" /></td>";
      print "</tr>";

Any suggestions?
echo '<tr align="center" valign="middle"/>';
echo '<td><input type="radio" name="game" value="'.$entry2.'"/></td>';
echo "<td>".$entry1."</td>";
echo "<td>".$entry2."</td>";
echo "<td>".$entry3."</td>";
echo "<td>".$entry4."</td>";
echo '<td><input type="hidden" name="gamepass" value="'.$entry5.'"/></td></tr>';   


Try something like that.. might work for you...  Same basic syntax I use on my forms... 
html format with php enbeded
example only

[b]edited as advised from below post[/b]
[code]
<?php
      <tr align="center" valign="middle">  
      <td><input type="radio" name="game"  value="<?php echo $entry2; ?>" ></td>
      <td><?php echo $entry1;?></td>
      <td><?php echo $entry2;?></td>
      <td><?php echo $entry3;?></td>
      <td><?php echo $entry4;?></td>    
      <td><input type="hidden" name="gamepass" value="<?php echo $entry5; ?>" ></td>
      </tr>



<tr align="center" valign="middle"> 
      <td><input type="radio" name="game" id="<?php echo $entry2;?>" value="<?php echo$entry2;?>" ></td>
      <td><?php echo $entry1;?></td>
      <td><?php echo $entry2;?></td>
      <td><?php echo $entry3;?></td>
      <td><?php echo $entry4;?></td>    
      <td><input type="hidden" name="gamepass" value="<?php echo $entry5;?>" ></td>
      </tr>
?>
[/code]
Thanks.  Tried radar's code and it didn't work - but it did make me look at what was happening in the page again and I found that I had a more exotic, but easily fix-able problem.  An image outside the table, below it, was creating some kind of "shadow" that was only allowing the buttons that were directly above it to operate - so I got rid of the image.

Anyway, radar and redarrow - I notice that you both recommended using echo statements instead of the print statements that I was using.  I learned PHP from an old-ish circa 2000 book that used print and didn't even mention echo.
I've noticed that everyone else seems to use echo - has print been more or less deprecated?

PS: I thought there was some way to flag a topic as "solved."  Can't seem to find it. 

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.