Php注册错误验证

时间:2015-04-25 00:37:35

标签: php html mongodb

我一直在练习PHP和mongodb。我正在开发一个简单的Web应用程序,但使用OOP。

我创建了一个名为user的类,它有我的方法来处理用户,如addUser,deleteUser等。对于添加用户,我希望表单执行一些简单的验证任务,但我不知道如何。以下是添加新用户的类:

function createUser($username, $name, $email, $password){


            $user = array(
                'username' => $username,
                'name' => $name,
                'email' => $email,
                'password' => $password

            );

            if ($this->db->count(array('username' => $username)) == 0) {
                $this->db->insert($user);
                return true;

            } else {
                echo 'username taken';
            }



    }

和html:

<?php


session_start();
include_once 'user.php';
include './templates/header.php';


if (isset($_POST['register']) && ($_POST['register']) == ($_POST["register"])) {


                $user = new User();
                $return = $user->createUser(
                    $_POST['username'],
                    $_POST['name'],
                    $_POST['email'],
                    $_POST['password'],
                    $_POST['password2']);

        }
        if ($return == true) {
            echo 'you have successfully registered';
        } else {
            echo '</br>' . 'sorry, try again';
        }





?>
<div class="container">
    <div class="jumbotron">
        <form method="post" action="">
            <label>Username: </label><br>
            <input name="username" type="text" ><br><br>

            <label>Name: </label><br>
            <input name="name" type="text"><br><br>

            <label>Email: </label><br>
            <input name="email" type="email" ><br><br>

            <label>Password: </label><br>
            <input name="password" type="password" ><br><br><br>

            <label>Repeat Password: </label><br>
            <input name="password2" type="password" ><br><br><br>

            <input name="register" class="btn btn-primary btn-lg" type="submit" value="Register"><br>
        </form>
    </div>
</div>

如果您发现其他错误,请随时纠正我。我知道肯定会有一些。

1 个答案:

答案 0 :(得分:1)

我为你写了一个简单实用的简单例子

 class validation { 
        public $currentValue;
        public $values = array();
        public $errors = array();

        public function __construct() {
            parent::__construct();

           //   echo "burasi model sayfasi ";


        }

        public function post($key){
            if(isset($_POST[$key])){
            $this->values[$key]     = $_POST[$key];
            $this->currentValue    = $key;
            return $this;
        }else{ die("hi boo boo ! your form values are empty");}

            }
    public function isEmpty(){
        if(empty($this->values[$this->currentValue])){
            $message='the form is emppty';
            $this->errors[$this->currentValue]['empty'] =''.$message.'';
        }
        return $this;
    }
    public function submit(){
        if(empty($this->errors)){
            return true;
        }else{
            return false;
        }
    }
  }

这是一个例子,你怎么能用它? 首先你需要你打电话给班级

$form = new validation ();
   $form->post("all you need just write post name here ")
->isEmpty();
if($form->submit()){
//everyting is ok !
you cann add delet or update data 
}else{
$data["error"] = $form->errors;  // and we sett the errorr mesages to the array now you can show the user the errormesages ! well done 
}
}