这个怎么了,晕   不对了额  哪错了   更改的值传不到数据库
<body>
<div id="head"></div>
<div id="Na">
<div>
  <ul>
    <li class="NaLeft">首页</li>
    <li class="NaLeft">>>&nbsp;管理员查询课表&nbsp;&nbsp;&nbsp;</li>
  </ul>
</div>
<div>
  <ul>
 <li class="NaRight"><a href="../Login.html">注销</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li>
 <li class="NaRight">&nbsp;&nbsp;<a href="add_admins.php">增加课表</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li>
 <li class="NaRight">&nbsp;&nbsp;<a href="detel_admins.php">删除课表</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li>
 <li class="NaRight">&nbsp;&nbsp;<a href="index_admins.php">查找课表</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li>
 <li class="NaRight">
  <?php
     include_once "../php/conn.php";
 mysql_query("set names gb2312");
 session_start();
     echo "欢迎您的登录&nbsp;&nbsp;&nbsp;".$session['username'];
  ?>&nbsp;&nbsp;&nbsp;|</li>  </ul>
</div>
</div>
<div id="body">
  <div class="left">
     <div class="body">
     <h1><center>
       选择需要修改的课表
     </center></h1>
 <div class="font">
 <center>
  <form action="updata_admins.php" method="post">
  <table align="center" cellpadding="0" cellspacing="0" border="0" height="100" width="350"    bordercolor="#FF33FF">
     <tr align="left">
   <td colspan="3"><font style="size:14px; color:#0099FF"><B>按教师号\学生号查询</B></font></td>
 </tr>
 <tr align="left">
   <td style="font-size:16px; color: #33CCFF" align="right">教师号\学号:&nbsp;</td>
   <td align="center"><input type="text" name="user"/></td>
   <td><input type="submit" name="submit_teachers" value="查找" /></td>
 </tr>
 </table>
 </form>
         </center>
         <br/>
 <br/>
 <center>
     <form action="updata_admins.php" method="post">
             <table cellpadding="0" cellspacing="0" border="1"  bordercolor="#990000" bgcolor="#993300" width="600" height="100" align="center">
    <tr align="center">
   <td>学号</td>
   <td>姓名</td>
   <td>班级</td>
   <td>科目</td>
   <td>时间</td>
   <td>授课教师</td>
   <td>教师号</td>
                </tr>
                <?php
                $result=mysql_query("select * from students where TeacherNumber='$_POST[user]' or  Number='$_POST[user]'");
                $arr=mysql_fetch_array($result,2);
                if($arr){
                while($arr){
                ?>
                <tr align="center">
                   <td><input type="text" name="number" value="<?php echo $arr[0];?>" size='10px'></td>
                   <td><input type="text" name="name" value="<?php echo $arr[1];?>" size='10px' /></td>
                   <td><input type="text" name="class" value="<?php echo $arr[2];?>" size='10px'></td>
                   <td><input type="text" name="course" value="<?php echo $arr[3];?>" size='10px'></td>
                   <td><input type="text" name="time" value="<?php echo $arr[4];?>" size='10px'></td>
                   <td><input type="text" name="teachers" value="<?php echo $arr[5];?>" size='10px'></td>
                   <td><input type="text" name="teachernumber" value="<?php echo $arr[6];?>" size='10px'></td>
                </tr>
                <?php
                     $arr=mysql_fetch_array($result);
                }
                ?>
                <tr align="center">
                   <td colspan="7"><input type="submit" value="修改"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="reset" value="重置" /></td>
                </tr>
                <?php
                }else if($_POST['submit']){
$result_updata=mysql_query("update students set                              Number='$_POST[number]',Name='$_POST[name]',Class='$_POST[class]',Course='$_POST[course]',Time='$_POST[time]',Teachers='$_POST[teachers]',TeacherNumber='$_POST[teachernumber]'  where TeacherNumber='$_POST[user]' ;");
echo "<tr>";
                echo "<td colspan='7'style='color:blue;size:+1' align='left'>&nbsp;您的修改成功,请返回查找...</td>";
                echo "</tr>";
}else{
                echo "<tr>";
                echo "<td colspan='7'style='color:red;size:+1' align='left'>&nbsp;没有您要寻找的学号或教师号</td>";
                echo "</tr>";
                }
                ?>
            </table>
            </form>
           </center>
 </div>
 </div>
  </div>
  <div class="right"></div>
</div>
<div id="low"><center>火星代码工作室 @版权所有 々*风筝</center></div>
</body>

解决方案 »

  1.   

    LZ,看到你的代码我想抽你$result=mysql_query("select * from students where TeacherNumber='$_POST[user]' or  Number='$_POST[user]'");
    $arr=mysql_fetch_array($result,2);居然在页面出现了这样的代码,既然你用了表单提交,为什么不放到后台去处理呢!
    另外提醒下LZ,网上抄作业的时候,别把<div id="low"><center>火星代码工作室 @版权所有 々*风筝</center></div>这些信息带进去,很容易被老师发现的
      

  2.   

    <?php
                    }else if($_POST['submit']){
                    $result_updata=mysql_query("update students set                              Number='$_POST[number]',Name='$_POST[name]',Class='$_POST[class]',Course='$_POST[course]',Time='$_POST[time]',Teachers='$_POST[teachers]',TeacherNumber='$_POST[teachernumber]'  where TeacherNumber='$_POST[user]' ;");
                    echo "<tr>";
                    echo "<td colspan='7'style='color:blue;size:+1' align='left'>&nbsp;您的修改成功,请返回查找...</td>";
                    echo "</tr>";
                    }else{
                    echo "<tr>";
                    echo "<td colspan='7'style='color:red;size:+1' align='left'>&nbsp;没有您要寻找的学号或教师号</td>";
                    echo "</tr>";
                    }
                    ?>这一部分代码建议:
        1:先将$_POST打印输出一下,看看有没有值
        2:更新语句用一个变量代替,$sql="update ...";如果1没有问题,把这句打印输出一下看看
      

  3.   

    我感觉能改的 都改了  怎么第二个 submit  还不对  晕啊
      

  4.   

    LZ,抱歉哈,以为你是学生,然后交期末作业!
    先看下有没有报错,把错误机制全开了。else if($_POST['submit'])再看下这个条件是否成立?
    最后检查SQL语句
      

  5.   

    一楼的,我要说你了,他这是没有使用模板。当然在当前页面有SQL语句了。另外,你以为使用模板就会在这个页面文件中不出现SQL语句了?你看看模板文件生成的PHP文件里,是不是也是HTML夹杂着PHP以及SQL语句。至于楼主说的数据写不进去,这个还真不好说,因为原因有很多。
    建议你这样分析:
    1、修改表的SQL语句被执行后,你再写一个echo mysql_error();看看有没有SQL错误发生。
    2、把SQL语句输出出来,然后分析有没有类型不对,或者字段值的缺失。
      

  6.   


    在页面中的确可以出现SQL,但你觉得这样是个好习惯么。而且LZ是有form表单提交,既然提交,就应该提交到后台处理,我之所以那么说,因为我觉得一个程序员应该养成一些好习惯,如果想你说的在页面随便出现SQL语句,那我问下,如果是大项目,你后期维护怎么办!
      

  7.   

    其实我就是个学生  一是要做课程设计  二是要继续学php,正常,学生里,高手也很多,哈哈
      

  8.   

    你说的意思应该是保存修改那的,我说的是select那的。
    保存数据那里确实应该写一个单独的PHP程序进行操作。
      

  9.   

    至于页面中要不要出现SQL语句,有时也有根据页面而确定。如果是一个分类数据列表页,那在页面中出现SQL的select也是不可避免的。
      

  10.   

    其实,说句实话,前台页面中根本就不该出现SQL语句,自己玩玩PHP小项目,出现SQL可以说还不太熟悉PHP,不知道Action,bo什么的,如果一个用PHP写的论坛什么的,出现SQL,那这个论坛估计三天两头要被攻击了!<?php
                    }else if($_POST['submit']){
                     // 'a'; select * from students; #'像LZ那样,我加这么个东西,SQL语句直接报废,而且我可以直接对数据库操作!
    还有,稍微对网站结构了解下,FF中firebug就可以攻击了,SSH中curl更彻底,所以为了安全起见,建议LZ还是不要在页面出现SQL
      

  11.   

    不是的,两不互不影响。其实你这样写是不是更好一些嘞,比如当前文件的名字是index.php
    <?php
    //这里没有进行字符过滤等操作
      extract($_GET);
      $where=" where 1";
      if(isset($kw))
      {
        $where.=" and userName like '%{$kw}%'";
      }
      $sql="select * from students {$where} limit 0,15";
      $result=mysql_query($sql,$conn);
    ?>
    <form name="form1" action="./" method="get">
      查询:<input type="text" name="kw" id="kw" size="30" maxlength="50" />
      <input type="submit" name="gosearch" id="gosearch" value="查询" />
    </form>
    <form name="form2" action="./save.php" method="post">
    <input type="hidden" name="action" id="action" value="edit" />
    <?php
      while($row=mysql_fetch_array($result))
      {
        echo<<<html
        <input type="text" name="user[]" value="{$row['user']}">
        <input type="text" name="number[]" value="{$row['number']}">
        <input type="text" name="class[]" value="{$row['class']}">
        ……
    html;
      }
    ?>
    <center><input type="submit" name="save" id="save" value="保存" /></center>
    </form>
    这里是分页,省略了。要注意,这里,你的SAVE.PHP文件接收到的user文本框名称是一维数组,其它文件框也一样。这样就能实现一次修改多条记录了。