登录验证时刷新页面

时间:2013-07-02 16:09:02

标签: php

在PHP代码中,当我尝试验证基本登录验证(空字段,数字字段等)时,我的页面会刷新并且所有已输入的数据都会消失。我的示例代码:

if(isset($_POST['Submit']))
{

// username and password sent from form 
$MailId=$_POST['MailId']; 
$Password=$_POST['Password']; 


  if(empty($_POST['MailId'])) 
  {
    $MerrorMessage = "You forgot to enter a MailId!";
  }

  else if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/", $MailId))
  {
    $MailformaterrorMessage = "Email ID format is not correct!";
  }


  if(empty($_POST['Password'])) 
  {
    $PerrorMessage = "You forgot to enter a Password!";
  }


  else
    {
      main Logic
    .....

  }

如果不使用Javascript,可以避免页面刷新的任何建议吗?

2 个答案:

答案 0 :(得分:0)

使用AJAX代替在没有RELOADING的情况下将其验证到服务器。阅读有关AJAX如何工作及其用途的更多信息。

答案 1 :(得分:0)

您有两个选项,可以在不刷新页面的情况下验证数据。 JavaScript& AJAX

我更喜欢后者,但这里是简单的Js验证的样子,只是为了得到图片。

<script type='text/javascript'>
var name = 'PHPNoob'; 

if(name.length < 2){
        document.write('Name can not be less than 2 characters long');
}else{
    document.write('Name is oK');
}
</script>

例如,将验证名称是否小于2个字符长。

如果要使用AJAX进行验证,则必须创建相同的PHP页面和另一个AJAX文件,以将这些值发送到服务器进行验证。由于AJAX非常快,使用它而不是Js

可能会带来很多好处
相关问题