<?
//文件名:test.php
?><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>test</title>
<script language="javascript">
<!--
function refresh(option)
{
window.location.href="test.php?option="+option;
document.form1.option[option].checked;
}-->
</script></head><body>
<table width="90%" align="center" border=1>
<form name="form1">
<tr>
<td width="10%" align="right" valign="top">问题:</td>
<td align="center">
<?
if ($option==1) { ?>
    选项1:<input type="checkbox" name="option[]" onClick="refresh(1)" checked>
<? } else { ?>
选项1:<input type="checkbox" name="option[]" onClick="refresh(1)" >
<? } 
if ($option==2) { ?>
    选项2:<input type="checkbox" name="option[]" onClick="refresh(2)" checked>
<? } else { ?>
选项2:<input type="checkbox" name="option[]" onClick="refresh(2)" >
<? } 
if ($option==3) { ?>
    选项3:<input type="checkbox" name="option[]" onClick="refresh(3)" checked>
<? } else { ?>
选项3:<input type="checkbox" name="option[]" onClick="refresh(3)" >
<? } 
if ($option==4) { ?>
    选项4:<input type="checkbox" name="option[]" onClick="refresh(4)" checked>
<? } else { ?>
选项4:<input type="checkbox" name="option[]" onClick="refresh(4)" >
<? } ?>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<?
switch($option)
{
case "1";
echo "你选择了选项<b>1</b>";
break;
case "2";
echo "你选择了选项<b>2</b>";
break;
case "3";
echo "你选择了选项<b>3</b>";
break;
case "4";
echo "你选择了选项<b>4</b>";
break;
}
?>
</td>
</tr>
<tr>
<td colspan="2" align="right">
<a href="#" onClick="javascritp:window.location.href='test.php'">恢复</a>
</td>
</tr>

</form>
</table>
</body>
</html>

解决方案 »

  1.   

    是用我的代码吗???文件名必须是test.php才行的。
      

  2.   

    ???不会吧,我测试没有问题。如果你看见8个选项的话...........................
    你怎么打开这个网页的,必须把文件放到有php权限的文件夹中,以网页(e.g. http://.....//localhost/php/test.php)的方式打开。
      

  3.   

    <?php
    /****主要利用cookie变量,如果选择了某项,则将该项的cookie变量值设为1,否则为0****/
    $question = "你使用何种语言进行Web开发"; //问题
    $option = array("PHP","JSP","ASP","ColdFusion","CGI");//选项
    ?>
    <html>
    <head>
    <title>test.php</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <script language=javascript>
    function check(id)
    {
    ob = eval("document.form1.chose"+id);
    if (ob.checked == true)
    {
    cookie = "chose"+id+"=1";    //选择后,cookie值为1 
    }
    else
    {
    cookie = "chose"+id+"=0";   //取消选择,cookie值为0
    }
    document.cookie=cookie;
    window.location.href="test.php"; //刷新
    }
    </script>
    </head>
    <body>
    <form name=form1 action="test.php">
    <?php

    echo $question;
    for ($i=0;$i<count($option);$i++)
    {
    echo "<br><input type=checkbox onclick='javascript:check(".$i.")' name=chose".$i." value=".$i;
    $cookie = "chose".$i;
    if ($_COOKIE[$cookie] == 1)

    echo " checked";
    $showmsg .= $option[$i]." ";  //$shomsg记录选择了那些项
    }
    echo ">";
    echo $option[$i];
    }
    if (empty($showmsg))
    {
    echo "<P>你还没有选呀!";
    }
    else
    {
    echo "<P>你选择了".$showmsg;
    }
    ?>
    </form></body>
    </html>
      

  4.   

    <?php
    $sel=$HTTP_POST_VARS["mysel"];
    echo(count($sel));
    ?>
    <script>
    function mysubmit()
    {
    document.myform.submit();
    }
    </script>
    <form name=myform method=post>
    <select name="mysel[]" onchange=mysubmit(this) multiple size=4>
    <option value=a1>a1
    <option value=a2>a2
    <option value=a3>a3
    <option value=a4>a4
    </select>
    </form>
    <script>
    <?
    for ($i=0; $i<count($sel); $i++) {
    ?>
    for(i=0;i<document.all("mysel[]").options.length;i++)
    {
    if(document.all("mysel[]").options[i].value=="<? echo(${"sel"}[$i])?>")
    {
    document.all("mysel[]").options[i].selected=true;
    break;
    }
    }
    <?
    }
    ?>
    </script>
      

  5.   

    你说的多选是指checkbox吧?
    如果要实现这个效果的话,选一次就提交一次页面就可以了。
    onclick=formsubmit();在js里面用
    function formsubmit()(
    form.submit();
    }然后每次读入页面时判断checkbox是否被选中如果是select,直接用dreamweaver就可以实现