PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (106): В начало « ... 78 79 80 81 [82] 83 84 85 86 ... » В конец
Найдено сообщений: 1581
Строитель
Отправлено: 08 Января, 2017 - 14:55:17 • Тема: не срабатывает проверка ошибок после нажатия кнопки • Форум: Вопросы новичков
Ответов: 13 Просмотров: 559
alezander , вы не правильно меня поняли, или я не верно выразился. Вам нужно блок проверок на ошибки вынести за пределы html-формы PHP:
скопировать код в буфер обмена
<?PHP
{
if ( $_POST [ 'username' ] == '' )
{
$erorrs [ ] = 'Ведите Имя пользователя!' ;
}
if ( $_POST [ 'password' ] == '' )
{
$erorrs [ ] = 'Ведите Имя пользователя!' ;
}
if ( $_POST [ 'class' ] == '' )
{
$erorrs [ ] = 'Ведите Имя пользователя!' ;
}
if ( $_POST [ 'type' ] == '' )
{
$erorrs [ ] = 'Ведите Имя пользователя!' ;
}
if ( $_POST [ 'cratedate' ] == '0000-00-00' )
{
$erorrs [ ] = 'Ведите Имя пользователя!' ;
}
{
// include "add.php";
}
else
{
echo $errors [ '0' ] ;
}
}
?>
<form action="">
(Добавление)
И ещё вместо этого echo $errors['0']; напишите так
Строитель
Отправлено: 05 Января, 2017 - 23:02:47 • Тема: Запрет отправки формы при ошибке • Форум: Вопросы новичков
Ответов: 2 Просмотров: 193
Romarione , запрос на добавление в базу нужно перенести в другое условие. И ещё надо в форму добавить инпут для ввода логина (добавите его самостоятельно) Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
header ( 'Content-Type: text/html; charset=utf-8' ) ;
require_once ( 'connectbase.php' ) ;
if ( isset ( $_POST [ 'submit' ] ) ) {
$_SESSION [ 'email' ] = $Email ;
$_SESSION [ 'login' ] = $login ;
$error_email = '' ;
$error_login = '' ;
$error_password = '' ;
$error_r_password = '' ;
$error = false ;
$error_email = 'Введите корректный email!' ;
$error = true ;
}
if ( $login == '' ) {
$error_login = 'Введите логин!' ;
$error = true ;
}
if ( $password == '' ) {
$error_password = 'Ввведите пароль!' ;
$error = true ;
}
if ( $r_password == '' ) {
$error_r_password = 'Введите пароль еще раз!' ;
$error = true ;
}
if ( $password == $r_password ) {
$password = md5 ( $password ) ; } else {
echo 'ВВЕДЕНЫЕ ПАРОЛИ НЕ СОВПАДАЮТ, ВВЕДИТЕ ПАРОЛИ ЗАНОВО!' ;
}
if ( ! $error ) {
INSERT INTO users
VALUES (' ', ' $Email ', ' $password ')
echo 'Вы ЗАРЕГЕСТРИРОВАНЫ!' ;
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title> Hello world </title>
</head>
<body>
<center>
<h2> Регистрация пользователя </h2>
<form name="reg" method="POST" action="">
<input type="text" name="email" required placeholder="Email" value="<?= $_SESSION [ "email" ] ?> "/><br>
<span style="color:red"> <?= $error_email ?> <br> </span>
<input type="password" name="password" required placeholder="Пароль"/><br>
<span style="color:red"> <?= $error_password ?> <br> </span>
<input type="password" name="r_password" required placeholder="Пароль еще раз"/><br>
<span style="color:red"> <?= $error_r_password ?> <br> </span>
<input type="submit" name="submit" value="Зарегистрироваться"/><br>
</form>
</center>
</body>
</html>
Строитель
Отправлено: 02 Января, 2017 - 19:25:10 • Тема: Магия с рандомом • Форум: Если скрипт не работает
Ответов: 2 Просмотров: 1021
BlackHacker , чтобы избегать повторений, нужно удалять из массива значения, которые были получены. По такому принципу
Строитель
Отправлено: 24 Декабря, 2016 - 20:29:53 • Тема: Как составить правильное условие? • Форум: Вопросы новичков
Ответов: 3 Просмотров: 231
SofiaKit пишет: Хочется чтоб писалось в одной строке и перечислялось то, чего нет... Как это сделать?
PHP:
скопировать код в буфер обмена
$error = [ ] ;
! empty ( $myrow [ 'username' ] ) ?
: $error [ ] = 'имени' ; ! empty ( $myrow [ 'surname' ] ) ?
: $error [ ] = 'фамилии' ; ! empty ( $myrow [ 'phone' ] ) ?
: $error [ ] = 'телефона' ; ! empty ( $myrow [ 'patronymic' ] ) ?
: $error [ ] = 'отчества' ;
if ( $cnt < 2) {
echo 'В базе нет ' . $error [ 0 ] . '!' ;
} else {
echo 'В базе нет ' . join ( ', ' , $error ) . ' и ' . $err . '!' ; }
}
Строитель
Отправлено: 20 Декабря, 2016 - 18:48:57 • Тема: помогите с регуляркой • Форум: Вопросы новичков
Ответов: 5 Просмотров: 311
AnteFil пишет: rel="http://oblik.ua/sites/default/files/testirovanie.png"
Если только одну ссылку, то preg_match(), а если более одной - тогда preg_match_all() Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
$str = '<div id="8078646591136142419" class="js-images-item images-item" data-index="3" style="display: block; width: 217px;">
<a class="js-images-item__link images-item__link" href="#urlhash=8078646591136142419" style="width: 217px; margin-top: 0px;">
<div class="images-item__thumb-wrap">
<img class="js-images-item__pic images-item__pic" alt="" src="//go2.imgsmail.ru/imgpreview?key=701d1e45aa971453&mb=imgdb_preview_366" data-content="<b>Тестирование</b>" data-width="290" data-height="176" data-size="60520" data-ext="PNG" data-number="3" data-redirurl="http://go.mail.ru/redir?q=ntcn&via_page=1&type=sr&redir=eJzLKCkpsNLXz0_KyczWK03ULyjKTylNLoEI6KYWFeiX5aWmFKXmZabql6QWl2QW5ZclAjkMeSXJeQyGJhZGxsaGFkYmDGmdE1iPfJ13pL_Pxn3366I0AMf9IgE" data-url="http://oblik.ua/product/oblik-erp/vnedrenie/testirovanie" data-urlssign="2978f1fa7cff5943889fa697aabdd59b" data-pretty="oblik.ua" data-tburl="//go2.imgsmail.ru/imgpreview?key=701d1e45aa971453&mb=imgdb_preview_366" data-redirimg="http://go.mail.ru/redir?q=ntcn&via_page=1&type=sr&redir=eJzLKCkpsNLXz0_KyczWK03UL84sSS3WT0lNSyzNKdFPy8wB8oAiJZlF-WWJeZmpegV56Qx5Jcl5DIYmFkbGxoYWRiYMPrMjzaMynH-tZ48wsRK5PAMAKN4eAg" rel="http://oblik.ua/sites/default/files/testirovanie.png" style="margin-left: -15px;" width="247" height="150">
<div class="images-item__border"></div>
<span class="images-item__size">290 x 176</span>
</div>
</a>
</div>' ;
preg_match ( '~rel="(.*\.[a-z]{3,4})"~iu' , $str , $arr ) ;
echo $arr [ 1] ; //http://oblik.ua/sites/default/files/testirovanie.png
Строитель
Отправлено: 16 Декабря, 2016 - 22:51:00 • Тема: Нужна помощь с регулярными выражениями • Форум: Вопросы новичков
Ответов: 4 Просмотров: 244
Heavenanvil , отредактируете код из этого примера под свой скрипт Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
$args = [
'login' => FILTER_SANITIZE_FULL_SPECIAL_CHARS,
'password' => FILTER_SANITIZE_FULL_SPECIAL_CHARS,
'username' => FILTER_SANITIZE_FULL_SPECIAL_CHARS,
'email' => FILTER_VALIDATE_EMAIL,
'tel' => FILTER_SANITIZE_FULL_SPECIAL_CHARS
] ;
$err = [ ] ;
preg_match ( '~^[a-z0-9_+-.]{4,15}$~i' , $data [ 'login' ] ) ?: $err [ ] = 'Не корретно заполнено поле Логин!' ;
preg_match ( '~^[a-z0-9_+-.]{4,15}$~i' , $data [ 'password' ] ) ?: $err [ ] = 'Не корретно заполнено поле Пароль!' ;
preg_match ( '~^[a-zа-яё]{1,20}$~iu' , $data [ 'username' ] ) ?: $err [ ] = 'Не корретно заполнено поле Имя!' ;
$data [ 'email' ] ?: $err [ ] = 'Не корретно заполнено поле E-mail!' ;
?: $err [ ] = 'Не корретно заполнено поле Tel!' ;
}
echo join ( '<br />' , $err ) ; } else {
// Выполнить код, если небыло ошибок
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Атрибут pattern</title>
</head>
<body>
<form method="post">
<pre>
Логин:
<input name="login" type="text" pattern="[A-Za-z0-9_+-.]{4,15}" />
Пароль:
<input name="password" type="password" pattern="[A-Za-z0-9_+-.]{4,15}" />
Имя:
<input name="username" type="text" pattern="[A-Za-zА-Яа-яЁё]{1,20}" />
E-mail:
<input name="email" type="email" pattern="[A-Za-z0-9._+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{1,63}$" />
Tel:
<input name="tel" pattern="[0-9]{3}-[0-9]{3}-[0-9]{4}" />
<input type="submit" value="Отправить"/>
</pre>
</form>
</body>
</html>
Страниц (106): В начало « ... 78 79 80 81 [82] 83 84 85 86 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB