各位大侠:
     我下面语句那里出错了吗?
     目的是想选中一个列表 如三年,提交上程序运行之后还是 “三年”   ,但我现在提交后默认就“一年” 郁闷啊!!
      <select name="zg" id="zg">
        <option <?PHP $_POST["zg"]=='一年'?' selected':''?>>一年</option>
        <option <?PHP $_POST["zg"]=='二年'?' selected':''?>>二年</option>
        <option <?PHP $_POST["zg"]=='三年'?' selected':''?>>三年</option>  
        <option <?PHP $_POST["zg"]=='四年'?' selected':''?>>四年</option>
      </select>

解决方案 »

  1.   

    加上 echo   三目运算符,不直接输出的
      

  2.   

    你打印一下$_POST["zg"]的值看对不对
      

  3.   

      <select name="zg" id="zg">
      <option <?PHP if ($_POST["zg"]=='一年') {?>selected<?PHP } ?>>一年</option>
      <option <?PHP if ($_POST["zg"]=='二年') {?>selected<?PHP } ?>>二年</option>
      <option <?PHP if ($_POST["zg"]=='三年') {?>selected<?PHP } ?>>三年</option>
      <option <?PHP if ($_POST["zg"]=='四年') {?>selected<?PHP } ?>>四年</option>
      </select>
      

  4.   


    <select name="zg" id="zg">
      <option <?PHP if ($_POST["zg"]=='一年') {echo"selected";} ?>>一年</option>
      <option <?PHP if ($_POST["zg"]=='二年') {echo"selected";} ?>>二年</option>
      <option <?PHP if ($_POST["zg"]=='三年') {echo"selected";} ?>>三年</option>
      <option <?PHP if ($_POST["zg"]=='四年') {echo"selected";} ?>>四年</option>
      </select>
      

  5.   

    <select name="zg" id="zg">
      <option <?PHP if ($_POST["zg"]=='一年') {?>selected<?PHP } ?>>一年</option>
      <option <?PHP if ($_POST["zg"]=='二年') {?>selected<?PHP } ?>>二年</option>
      <option <?PHP if ($_POST["zg"]=='三年') {?>selected<?PHP } ?>>三年</option>
      <option <?PHP if ($_POST["zg"]=='四年') {?>selected<?PHP } ?>>四年</option>
      </select>
      

  6.   


     <select name="zg" id="zg">
      <option <?PHP echo $_POST["zg"]=='一年'?' selected':''?>>一年</option>
      <option <?PHP echo $_POST["zg"]=='二年'?' selected':''?>>二年</option>
      <option <?PHP echo $_POST["zg"]=='三年'?' selected':''?>>三年</option>   
      <option <?PHP echo $_POST["zg"]=='四年'?' selected':''?>>四年</option>
      </select>