Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
3 / 2 / 1
Регистрация: 22.10.2014
Сообщений: 75

Не добавляются данные в бд и не работает нормально проверка

18.11.2018, 17:57. Показов 645. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Делаю страничку регистрации, написал функции проверки и добавления данных в бд, но ничего не происходит в чем модет быть проблема. Проект прикрепил
Вложения
Тип файла: zip users.sql (1).zip (11.3 Кб, 1 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.11.2018, 17:57
Ответы с готовыми решениями:

видеокарта перестала работать, но на другом пк работает нормально, мой пк с другой видеокартой работает нормально тоже
мой пк: мать - ga-78lmt-s2p видеокарта - amd radeon r7 200 одно время комп начал тормозить, выключаться, позже начал...

Не добавляет ни какие буквы в БД, цифры добавляются нормально
Надо чтобы данные с формы отсылались на сервер без перезагрузки страницы. Проблема в том, что когда вводишь буквы(русские, англ все равно)...

Запрос при выполнении в вба просит ввести данные, а в конструкторе работает нормально
Столкнулся со следующей проблемой. В вба запрос выдает это: Но если делать через конструктор запросов, то все отлично работает. Этих...

7
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
18.11.2018, 18:01
http://phpfaq.ru/debug
0
3 / 2 / 1
Регистрация: 22.10.2014
Сообщений: 75
18.11.2018, 18:26  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
http://phpfaq.ru/debug
попробовал, были ошибки связанные с js, но не более. Код так же не работает
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
18.11.2018, 18:34
Сделайте разные проверки на разных этапах
0
3 / 2 / 1
Регистрация: 22.10.2014
Сообщений: 75
18.11.2018, 18:59  [ТС]
Цитата Сообщение от andyyy Посмотреть сообщение
Сделайте разные проверки на разных этапах
хотел проверить существуют ли вводимые переменные с помощью var_dump, но так как переменная еще пуста, ибо я не вводил в нее данные, пишет null. Допустим я ввожу строку емаил, как мне проверить что переменная передастся из этого поля?
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
18.11.2018, 21:10
Isset()
Empty()
0
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
18.11.2018, 21:48
Цитата Сообщение от Kyurem Посмотреть сообщение
как мне проверить что переменная передастся из этого поля?
PHP
1
2
if(isset($_POST['mail']))
    echo 'Переменная передана';
0
3 / 2 / 1
Регистрация: 22.10.2014
Сообщений: 75
19.11.2018, 18:48  [ТС]
Цитата Сообщение от Jodah Посмотреть сообщение
if(isset($_POST['mail']))
* * echo 'Переменная передана';
проблема оказалась в неработающей валидации. А что именно не так, я не знаю. Не работает валидация в емаил, логин, имя. Если я ее удаляю данные в бд добавляются.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
function nameValid(string $name){
    if (empty($name)) {
        return "Заполните ФИО";
    } else if (preg_match( "/[^а-яё ]/iu", $name)){
        return "Только кирилица и пробел";
    }
    else {
        return true;
    }
}
 
function emailValid(string $email){
    if (empty($email)) {
        return "Заполните Емайл";
    } else if (!filter_var($email, FILTER_VALIDATE_EMAIL)){
        return "Не корректный емаил!";
            }
            else {
                return true;
            }
}
 
 
function loginValid(string $login){
if (empty($login)) {
        return "Заполните логин";
    } else
 
            if (strlen($login)<6 || preg_match( "/[^a-z]/", $login)){
                return "Минимум 6 символов латиница";
            }
            else {
                return true;
            }
}
 
function passwordValid(string $password, string $passwordConfirm){
    if (empty($password) || empty($passwordConfirm)) {
        return"Заполните пароль";
    } else if ($password!=$passwordConfirm){
        return "Пароли не совпадают";
    }
    else if (!preg_match( "/^([a-zA-Z]{6,})$/", $password) || !preg_match( "/[a-z]/", $password) || !preg_match( "/[A-Z]/", $password)){
        return "Минимум 6 символов, анг раскладка, верхний и нижний регистр";
    } else {
        return true;
    }
}
 
 
 
function allValid(array $formData){
    $err=[];
    if (nameValid($formData['name'])!== true) {
        $err['name']=nameValid($formData['name']);
    }
    if (emailValid($formData['email'])!== true) {
        $err['email']=emailValid($formData['email']);
    }
 
    if (loginValid($formData['login'])!== true) {
        $err['login']=loginValid($formData['login']);
    }
    if (passwordValid($formData['password'],$formData['password_double'])!== true) {
        $err['password']=passwordValid($formData['password'], $formData['password_double']);
    }
if (count($err)==0){
    return true;
}
else {
    return $err;
}
}
 
 
function regUser($mysqli, array $formData){
    if (allValid($formData)===true) {
        $sql="INSERT INTO  `users` (`id_user`, `name`, `email`, `login`, `password`, `role`) values (NULL, '$formData[name]', '$formData[email]', '$formData[login]', SHA1('$formData[password]'), 10)";
 
        if ($result = $mysqli->query($sql)) {
            return true;
        }
    }
 
}
 
?>
Добавлено через 3 часа 21 минуту
Как реализовать функцию вывода таблицы в зависимости от пользователя. Знаю что надо делать при помощи сессии. Но у меня она массив с данными, и из за этого я не могу вставить ее в sql запрос.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php include 'layer/header.php' ?>
<?php require_once 'libs/mysql.php' ?>
<?php require_once 'libs/userdll.php' ?>
 
    <main>
        <h1>Авторизация</h1>
        <?php
if (!empty($_POST)){
  $_SESSION['user']=userLogin($_POST['login'],$_POST['password']);
  if (!$_SESSION['user']){
    echo "<mnt-error>Неправильные логин или пароль</mnt-error>";
  }
}
if (!empty($_SESSION['user'])){
  if ($_SESSION['user']['role']==1){
    $host = $_SERVER['HTTP_HOST'];
    header("Location: http://$host/kurs.loc/admin/index.php");
    exit;
  } else {
    $host = $_SERVER['HTTP_HOST'];
    header("Location: http://$host/notes.php");
    exit;
  }
}
         ?>
        <form method="POST">
            <p>
                <input type="text" name="login" placeholder="Логин">
                <mnt-error>Ошибка ввода</mnt-error>
            </p>
            <p>
                <input type="password" name="password" placeholder="Пароль">
                <mnt-error>Ошибка ввода</mnt-error>
            </p>
            <button>Авторизоваться</button>
        </form>
    </main>
<?php include 'layer/footer.php' ?>
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php include 'layer/header.php' ?>
<?php require_once 'libs/mysql.php' ?>
<?php
if (empty($_SESSION['user'])){
  $host = $_SERVER['HTTP_HOST'];
  header("Location: http://$host/kurs.loc/index.php");
  exit;
}
 
 ?>
        <main>
            <h1>Мои записи</h1>
            <form method="POST">
              <?php
 
 
            $query ="SELECT * FROM users";
 
            $result = mysqli_query($mysqli, $query) or die("Ошибка " . mysqli_error($mysqli));
            if($result)
            {
                 
 
                echo "<table><tr><th>Id</th><th>Имя</th><th>Емаил</th><th>Логин</th><th>Пароль</th><th>Роль</th></tr>";
 
                {
                    $row = mysqli_fetch_row($result);
                    echo "<tr>";
                        for ($j = 0 ; $j < 6 ; ++$j) echo "<td>$row[$j]</td>";
                    echo "</tr>";
                }
                echo "</table>";
 
                
                mysqli_free_result($result);
            }
 
            mysqli_close($mysqli);
            echo $_POST;
            ?>
 
            </form>
        </main>
<?php include 'layer/footer.php' ?>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.11.2018, 18:48
Помогаю со студенческими работами здесь

Не обновляются/добавляются данные данные через клиент
привет форумчане,не обновляются данные через клиент при нажатии на кнопку ничего не происходит form1.cs using System.Data; using...

Связь на ноуте упала и не поднялась больше. Компьютер работает нормально, другие устройства от вайфай тоже работают нормально
Добрый день. Очень похожая проблема, только к сожалению у меня не пингуется не один айри.

Данные не добавляются
Здравствуйте. Добавляю строку таким образом: &lt;html&gt; &lt;head&gt; &lt;/head&gt; &lt;body&gt; &lt;form name=&quot;page_add&quot;...

Не добавляются данные в БД
Добрый день форумчане. Совсем недавно начал изучать Entity Framework 6 . На данный момент у меня не получается правильно добавить данные в...

Не добавляются данные в БД
Собственно, сам проект, заодно приходит вопрос, не понимаю почему не добавляются данные в &quot;Приход-расход&quot;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru