Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- require_once 'password.php';
- //ERROR NUMBERS
- define('PDO_DUPLICATE_ERROR','23000');
- define('SUCCESS','1000');
- define('FAIL','0111');
- define('EMPTY_FIELDS','1001');
- define('QUESTION_NOT_SELECTED','1002');
- define('PASSWORD_NOT_MATCH','1003');
- define('DATABASE_CONNECTION_ERROR','1004');
- define('QUERY_ERROR','1005');
- define('USER_EXISTS','1006');
- define('ID_FORMAT_ERROR','1007');
- define('CONTACT_FORMAT_ERROR','1008');
- define('EMAIL_ERROR','1009');
- //LENGTHS OF FIELD
- define('ID_ALLOWED_LENGTH',6);
- define('MAX_CONTACT_LENGTH',11);
- function validate_empty($val){
- if(empty($val))
- return true;
- else
- return false;
- }
- function signup(){
- $data=array();
- $insert=true;
- if (validate_empty($_POST['id'])||validate_empty($_POST['fname'])||
- validate_empty($_POST['lname'])||validate_empty($_POST['contact'])||
- validate_empty($_POST['email'])||validate_empty($_POST['ans'])||
- validate_empty($_POST['pwd'])||validate_empty($_POST['RePwd'])){
- $data['error'][]=EMPTY_FIELDS;
- $insert=false;
- }
- if(ctype_digit($_POST['id'])&&(strlen($_POST['id'])!=ID_ALLOWED_LENGTH)){
- $data['error'][]=ID_FORMAT_ERROR;
- $insert=false;
- }
- if(strlen($_POST['contact'])>MAX_CONTACT_LENGTH&&ctype_digit($_POST['contact'])){
- $data['error'][]=CONTACT_FORMAT_ERROR;
- $insert=false;
- }
- if($_POST['que']=='---Select---'){
- $data['error'][]=QUESTION_NOT_SELECTED;
- $insert=false;
- }
- if(!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL)){
- $data['error'][]=EMAIL_ERROR;
- $insert=false;
- }
- if($_POST['pwd']!=$_POST['RePwd']){
- $data['error'][]=PASSWORD_NOT_MATCH;
- $insert=false;
- }
- if($insert){
- $length=100;
- $bool=true;
- $salt=openssl_random_pseudo_bytes ( $length, $bool );
- $que=create_hash($_POST['que']);
- $ans=create_hash(strtolower($_POST['ans']));
- $pwd=$_POST['pwd'].$salt;
- $hash= create_hash($pwd);
- try {
- $conn = new PDO('mysql:host=localhost;dbname=bhel', 'root', '');
- $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- $data['dbconnection']=true;
- $data["error"]=NULL;
- $sql = "INSERT INTO user_detail (ID,First_Name,Last_Name,Contact,Email,salt,pwd,que,ans) VALUES (:n1,:n2,:n3,:n4,:n5,:n6,:n7,:n7,:n9)";
- try{
- $query = $conn->prepare($sql);
- $query->bindParam(":n1", $_POST['id'],PDO::PARAM_INT);
- $query->bindParam(":n2", $_POST['fname'],PDO::PARAM_STR);
- $query->bindParam(":n3", $_POST['lname'],PDO::PARAM_STR);
- $query->bindParam(":n4", $_POST['contact'],PDO::PARAM_INT);
- $query->bindParam(":n5", $_POST['email'],PDO::PARAM_STR);
- $query->bindParam(":n6", $salt,PDO::PARAM_STR);
- $query->bindParam(":n7", $hash,PDO::PARAM_STR);
- $query->bindParam(":n8", $que,PDO::PARAM_STR);
- $query->bindParam(":n9", $ans,PDO::PARAM_STR);
- $query->execute();
- $data['success'] = SUCCESS; //success
- }
- catch(PDOException $e) {
- if((string)($e->getCode())==PDO_DUPLICATE_ERROR)
- $data['dbaccess'] = USER_EXISTS;
- else
- $data['dbaccess'] = QUERY_ERROR;
- $data['success']=FAIL;
- }
- }
- catch(PDOException $e) {
- $data['dbconn']=DATABASE_CONNECTION_ERROR; //database connection not estabalished
- $data['success']=FAIL;
- }
- }
- else
- $data['success']=FAIL;
- echo json_encode($data);
- }
- if(isset($_POST['form_identify'])&&$_POST['form_identify']=='signup'){
- $length=100;
- $bool=true;
- $salt=openssl_random_pseudo_bytes ( $length, $bool );
- $pwd=$_POST['pwd'].$salt;
- echo $_POST['pwd']."<br>".$salt."<br>".$pwd."<br>".create_hash($pwd)."<br>";
- signup();}
- else {
- $data["success"]=FAIL;
- echo json_encode($data);
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement