Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 13.04.2019, 12:57   #1
PricoL102rus
Новичок
 
Регистрация: 13.04.2019
Сообщений: 1
Репутация: 10
По умолчанию не работают проверки на пустоту поля php

Доброго времени суток! Прописываю регистрацию и не могу понять в чем дело!
Код:

<?php
require "db.php";
$data = $_POST;
if( isset($data['do_obana']) )
{
	//здесь регистрируем

	$errors = array();
	if (trim($data['surname']) == '')
	{
		$errors[] = 'Введите фамилию!';
	}

	$errors = array();
	if (trim($data['name']) == '')
	{
		$errors[] = 'Введите имя!';
	}

	$errors = array();
	if (trim($data['email']) == '')
	{
		$errors[] = 'Введите email!';
	}

	$errors = array();
	if (trim($data['login']) == '')
	{
		$errors[] = 'Введите логин!';
	}

	$errors = array();
	if ($data['password'] == '')
	{
		$errors[] = 'Введите пароль!';
	}

	$errors = array();
	if ($data['password_2'] != $data['password'])
	{
		$errors[] = 'Повторный пароль введен не верно!';
	}

	if( empty($errors)  )
	{
		//все хорошо, регистрируем
		$user =R::dispense('users');
		$user->login = $data['login'];
		$user->password = $data['password'];
		$user->password2 = $data['password2'];
		R::store($user);
		echo '<div style="color: green;>Вы успешно зарегестрированы!</div><br>';
	}
	else
	{
		echo '<div style="color:red;">'.array_shift ($errors).'</div><br>';
	}
}

?>

<form action="/register.php" method="POST">
<p>
	<P><strong>Фамилия*</strong></p>
	<input type="surname" name="surname" value="<?php echo @$data['surname']; ?>">
</p>
<p>
	<P><strong>Имя*</strong></p>
	<input type="name" name="name"value="<?php echo @$data['name']; ?>">
</p>

<p>
	<P><strong>Отчество</strong></p>
	<input type="patronymic" name="patronymic"value="<?php echo @$data['patronymic']; ?>">
</p>
<p>
	<P><strong>Ваш email*</strong></p>
	<input type="email" name="email"value="<?php echo @$data['email']; ?>">
</p>
<p>
	<P><strong>Логин*</strong></p>
	<input type="login" name="login"value="<?php echo @$data['login']; ?>">
</p>
<p>
	<P><strong>Пароль*</strong></p>
	<input type="Password" name="Password">
</p>
<p>
	<P><strong>Повторите пароль*</strong></p>
	<input type="Password" name="Password2">
</p>
<p>
	<button type="submit" name="do_obana">Зарегистрироватся
	</button>
</p>
</form>

В общем когда поле пустое не выдает ошибку просто текст весь подсвечивается зеленым! Буду очень признателен если кто подскажет
PricoL102rus вне форума   Ответить с цитированием
Старый 14.04.2019, 09:12   #2
ADSoft
Профессионал
 
Регистрация: 25.02.2007
Адрес: Татарстан
Сообщений: 3,380
Репутация: 914

icq: 303-206-418
skype: ad-soft.info
По умолчанию

Ну зачем же массив ошибок обнулять перед каждой проверкой? Только один раз в начале скрипта! У вас по сути может проверить только на последнюю ошибку в списке
ADSoft вне форума   Ответить с цитированием
Старый 18.04.2019, 19:19   #3
freebsdd
Новичок
Пользователь
 
Регистрация: 18.04.2019
Сообщений: 23
Репутация: 10
По умолчанию

Согласен, убрать нужно $errors = array(); кроме как сверху

и вместо if (trim($data['surname']) == '') можно if(empty($data['surname']))

и ошибки орфографические исправить
freebsdd вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с циклом. Компилируется нормально,кнопки Один,Два,Три,Четыре и Пять работают хорошо,но кнопки 6 и 7 не работают. Bananiys24 Общие вопросы по Java, Java SE, Kotlin 1 16.06.2017 18:01
Проверка поля на пустоту denis.ta-com Microsoft Office Access 8 03.01.2016 21:44
Условие для проверки файла на пустоту Pascal olga_v95 Помощь студентам 8 18.03.2013 11:07
генератор поля, не работают триггеры delphi Domanoff БД в Delphi 4 07.04.2010 21:40
ajax+php не работают проверки if Tirendus JavaScript, Ajax 10 23.03.2010 12:46


08:49.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru