为什么我在php上写的这个代码,在浏览器上什么都不显示啊
if(isset($_POST['Submit'])&& $_POST['Submit']=="登陆"){
$user=$_POST['user'];
$pass=$_POST['pass'];
if(empty($user)||empty($pass)){
echo"<script>alert('用户名和密码不能为空');</script>";
}
else{
echo"输入的用户名为:$user 密码为:$pass";
}
}
?>
在浏览器上运行的结果空白的
------解决方案--------------------
说明你这个条件if(isset($_POST['Submit'])&& $_POST['Submit']=="登陆") 没有成立,所以是空白的,你在表里看下的按钮的name是不是 name="登陆",
如果不是 说明$_POST['submit']=="登陆"条件不成立,把它们改成一致的就行了,
另外:form 里的 method 是要用post 方法来提交的,即method="post"
可以这样
在表单中
php中这样写:
if(isset($_POST['login'])&& $_POST['login']=="登陆"){
$user=$_POST['user'];
$pass=$_POST['pass'];
if(empty($user)||empty($pass)){
echo"<script>alert('用户名和密码不能为空');</script>";
}
else{
echo"输入的用户名为:$user 密码为:$pass";
}
}
else{
echo "表单没有提交过来";
}
?>
------解决方案--------------------
------解决方案--------------------
参考PHP手册:语言参考->变量->来自PHP之外的变量
<?php// 自 PHP 4.1.0 起可用 echo $_POST['username']; echo $_REQUEST['username']; import_request_variables('p', 'p_'); echo $p_username;// 自 PHP 3 起可用。自 PHP 5.0.0 起,这些较长的预定义变量// 可用 register_long_arrays 指令关闭。 echo $HTTP_POST_VARS['username'];// 如果 PHP 指令 register_globals = on 时可用。不过自// PHP 4.2.0 起默认值为 register_globals = off。// 不提倡使用/依赖此种方法。 echo $username;?><form action="foo.php" method="POST"> Name: <input type="text" name="username"><br /> Email: <input type="text" name="email"><br /> <input type="submit" name="submit" value="Submit me!" /></form> $_POST['Submit']=="登陆" 表单传递过来的值(中文)是编码过的。当然验证不通过! 如果你换成英文就通过了 或者你把这个去掉也一样,如下面的那个。这个键值存在时就执行