去的html里是这么写的<form action="../leaveapp/newleave.php?action=leave" method="post"></form>
在php里面做了一个判断:
代码如下:if($action == 'leave')
{
print "<script language=\"JavaScript\">alert(\"你好\");</script>"; 

$dbh=mysql_connect('localhost','root','');
mysql_select_db('dedecmsv53utf8');

$username=$_POST['leaname'];
//$usid="select mid form dede_member where userid='$username'";

$deap=$_POST['departmen'];
$begin=$_POST['leavetime'];
$end=$_POST['endtime'];
$leavetype=$_POST['leavetype'];
$becoues=$_POST['because'];
$appname=$_POST['approvalname'];

$sql="insert into leaveinfo (useID,depId,begintime,endtime,leavetype,becouse,appname) values('$username','$deap','$begintime','$end','leavetype','becoues','appname')";
$res=mysql_query($sql,$dbh);
$err=mysql_error();

//showmsgs('post_answer_succeed',"question.php?id=$askid");


}
为什么不执行if里面的代码呢,请大家帮我看看我哪里写错了!

解决方案 »

  1.   

    $action=$_GET['action'];
    if($action == 'leave'){
        ......
    }
      

  2.   

    你的register global 是close的,这样安全一些,但也不能直接用$action.支持一楼的写法
      

  3.   

    问题搞定了,现在再问一下,我执行完一条SQL语句后,什么重定向到另一个PHP页面?谢谢!!解决了马一给分!
      

  4.   

    若执行重定向之前,没有输出过任何的内容(包括一个空格),可以用header来重定向:
    header("Location:index.php");
    如果网页路径用变量表示的 ,比如 $url = 'jkdjk/jkdk.php' ;
    就写header("Location:" .$url);若在重定向之前已经有东西输出了,可以用这样定向:
    echo"<script language=javascript>setTimeout(\"this.location.href='aaa.php'\",5000)</script>";  里面的5000表示5秒后跳转,您可以自己修改这个时间