Не срабатывает success
в ajax
. А в error
выдает такое (2) [Object, "parsererror"]
. PHP
скрипт создает пользователя в БД, но не срабатывает строчка echo json_encode("...");
. Может это быть как-то связано с работой phpstorm
? Как исправить это?
ajax:
$(document).ready(function($) {
// register
$('#reg-form').submit(function(e) {
var isCheck = $('#checkbox1').prop('checked');
if (isCheck) {
e.preventDefault();
var data = $("#reg-form").serialize();
$.ajax({
url: 'include/signup.php',
type: 'POST',
dataType: 'json',
data: data,
success: function(data) {
var obj = $.parseJSON(data);
console.log(obj);
if (data == "value-error") $('.place-error').html('<p>Ви ввели невірні дані.</p>');
else if (data == "id-error") $('.place-error').html('<p>Такий профіль уже існує.</p>');
else if (data == "success") location.reload();
console.log("Nothing was happen 2");
},
error: function(xhr, textStatus) {
console.log([xhr, textStatus]);
}
});
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
php:
<?php
session_start();
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
require_once $_SERVER['DOCUMENT_ROOT'] . '/include/db.php';
header('Content-Type: application/json; charset=utf-8');
$connect = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$_SESSION['logged'] = false;
$haserror = false;
if (!$connect) die();
$name = $_POST['reg-name'];
$surname = $_POST['reg-surname'];
$email = $_POST['reg-email'];
$pass = $_POST['reg-pass'];
$date = date('Y-m-d H:i:s');
if (preg_match("/^([a-z0-9_\.-]+)@([a-z0-9_\.-]+)\.([a-z\.]{2,6})$/", $email)){
if (preg_match("/^[А-ЯІЇ]{1}[А-яії'-]{2,}$/u", $name)){
if (preg_match("/^[А-ЯІЇ]{1}[а-яії'-]{2,}$/u", $surname)){
if (preg_match("/([A-z0-9-_']{6,})/i", $pass)){
echo json_encode("success-in");
$sql = "SELECT * FROM `users` WHERE `email` = '$email'";
$res = mysqli_query($connect, $sql);
$count = mysqli_num_rows($res);
if ($count == 0){
$sql = "INSERT INTO `users` (`email`, `password`, `name`, `surname`, `date`) VALUES ('$email', '$pass', '$name', '$surname', '$date')";
mysqli_query($connect, $sql);
$_SESSION['user-id'] = mysqli_insert_id($connect);
$_SESSION['user-name'] = $name;
$_SESSION['user-surname'] = $surname;
$_SESSION['user-email'] = $email;
$_SESSION['logged'] = true;
echo json_encode("success");
} else echo json_encode("id-error");
} else $haserror = true;
} else $haserror = true;
} else $haserror = true;
} else $haserror = true;
if ($haserror) echo json_encode("value-error");
mysqli_close();
exit;
}
else {
include_once $_SERVER['DOCUMENT_ROOT'].'/include/error/404.php';
}
?>
html:
<form id="reg-form">
<div class="form-group">
<input type="text" class="form-control" name="reg-name" placeholder="Ім'я" pattern="^[А-ЯІЇ]{1}[А-яії'-]{2,}$" required>
</div>
<div class="form-group">
<input type="text" class="form-control" name="reg-surname" placeholder="Прізвище" pattern="^[А-ЯІЇ]{1}[А-яії'-]{2,}$" required>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-envelope-o fa-fw"></i></span>
<input name="reg-email" class="form-control" type="email" placeholder="Email" pattern="^([a-z0-9_\.-]+)@([a-z0-9_\.-]+)\.([a-z\.]{2,})$" required>
</div>
</div>
<div class="form-group">
<input id="register1" type="password" class="form-control" name="reg-pass" placeholder="Пароль" pattern="([A-z0-9-_']{6,})" required>
</div>
<div class="form-group">
<input id="register2" type="password" class="form-control" name="reg-pass-sec" placeholder="Повторіть пароль" pattern="([A-z0-9-_']{6,})" required>
</div>
<div class="checkbox">
<label>
<input id="checkbox1" type="checkbox" required>
Я згідний з правилами проекту
</label>
</div>
<button name="reg-btn-n" id="reg-btn" type="submit" class="btn btn-success">Створити профіль</button>
<button type="reset" class="btn btn-danger"><i class="fa fa-trash-o"></i></button>
</form>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть массив, в котором хранятся элементы вместе с тегамиУ некоторых тег пустой, а у некоторых указан определенный, одинаковый class
Можно ли, если можно то как добавить подсветку "%" в PHPStorm, так как я использую этот символ для маркеров, также чтобы текст между этими маркерами...