W
W
wasd3602016-02-21 01:22:41
PHP
wasd360, 2016-02-21 01:22:41

Registration handling process inside a model window in Bootstrap Modal?

Hello.
There is a popup (Bootstrap Modal). In this window there are forms for registration. Question: how to make a post process (method=post) inside a popup window.
Tell me how to do this?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
A
Andrzej Wielski, 2016-02-21
@wielski

The most banal thing is to bind to the form onsubmit="PostThisFormPls(this);return false"
Accordingly , the PostThisFormPls function sends form data using jquery:

function PostThisFormPls(object){
  $.post($(object).attr('action'), $(object).serialize(), function(data){
     alert(data); //делаем что хотим с принятыми данными. Это может быть json с сообщением или ошибкой, к примеру.
  });
}

W
wasd360, 2016-02-21
@wasd360

I don't understand what's the matter. If you remove the check of input characters - everything is ok. With her, no. What is the jamb?

<form name="reg">
  UserID: <input type="text" id="name" name="name" size=20><br><br>
  Password: <input type="password" id="pass" name="pass" size=20><br><br>
  Confirm Password: <input type="password" id="confirm" name="confirm" size=20><br><br>
  <button id="submit_form">Отправить</button>
  </form>
  <div id="result"></div>

$(document).ready(function(){
  	$("#submit_form").click(function(){ //при клике на кнопку <button id="submit_form">Отправить</button> выполняем функцию
    $.post("/account.php", $("#name","#pass","#confirm").serialize(),  function(response) { //здесь #form_id - это ID формы, которая будет отправляться
      $("#result").html(response); //вывод ответа от php-скрипта в <div id="result"></div>
    });
    return false;
  });
});

<?

$dbselect = mysql_select_db("$dbname")  
or die ('Could not select database'); 


$user = mysql_real_escape_string($_POST["name"]);
$pass = mysql_real_escape_string($_POST["pass"]); 
$confirm = mysql_real_escape_string($_POST["confirm"]); 


if(!preg_match("/^[\.A-z0-9_\-\+]+[@][A-z0-9_\-]+([.][A-z0-9_\-]+)+[A-z]{1,4}$/",$user)) { 
die ('Ошибка: Имя пользователя может содержать только алфавитно-цифровые символы и должны быть между 5 и 20 символов в длину.'); 
} 
  
if(!preg_match('/^[a-zA-Z0-9]{5,20}$/',$pass)) { 
die ('Ошибка: Пароль пользователя может содержать только алфавитно-цифровые символы и должны быть между 5 и 20 символов в длину.'); 
} 
  
if($pass != $confirm) { 
die ('Ошибка: Пароли не совпадают.'); 
} 
  

$result = mysql_query("SELECT login FROM accounts WHERE login='$user'"); 
  
if(mysql_num_rows($result)>0) { 
die ('Ошибка: Имя пользователя уже существует.'); 
}else{ 
mysql_query("INSERT INTO accounts (login, password, accessLevel) VALUES ('".$_POST['name']."', '".base64_encode(pack('H*', sha1($_POST['pass'])))."', 0)") 
or die ('Error: ' . mysql_error()); 
} 
  

echo "Account created successfully."; 
  

mysql_close(); 
  
?>

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question