SlideShare a Scribd company logo
1 of 19
Download to read offline
Drupal. Какая форма!
Какая динамика!
Крайнюк Михаил
<form method="POST" name="login" action="http://site/log">
<div> Email </div>
<div> <input type="text" name="email"> </div>
<div> Пароль </div>
<div> <input type="password" name="pass"> </div>
<input type="submit" class="submit">
</form>
Email
MOYAPOCHTA@EXAMPLE.COM

Пароль
OOOOOO
Submit
Проверка данных
Если есть ошибки
Иначе обработка
данных
function name_my_form($form, &$form_state) {
$form[‘email'] = array(
'#type' => ‘textfield',
'#title' => t(‘Email'),
);
$form[‘password'] = array(
'#type' => ‘password',
'#title' => t(‘Пароль'),
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t(‘Submit'),
);
return $form;
}
Email
Пароль
Submit
function name_my_form_validate($form, &$form_state) {
$values = &$form_state[‘values’];
$email = $values[‘email’];
$password = $values[‘password’];
... (проверка почты и пароля) ...
if ($error) {
form_error($form[‘email’], t(‘Некорректная почта!’));
}

}
function name_my_form_submit($form, $form_state) {
... (обработка данных) ...
}
function mymodule_name_my_form_alter(&$form, &$form_state) {

$form['submit']['#value‘] = t(‘Войти');
}

Email

Пароль
Войти
‘#states’ => array(
‘visible’ => ...
),
‘#ajax’ => array(
‘callback’ => ‘my_callback’,
‘wrapper’ => ‘id-of-my-wrapper’,
‘method’ => ‘replace’,
‘effect’ => ‘fade’,
),

AJAX

+ $commands[]
+ Drupal.ajax.prototype...
Спасибо за внимание!

More Related Content

Similar to Drupal. Forms

Similar to Drupal. Forms (8)

Web весна 2012 лекция 4
Web весна 2012 лекция 4Web весна 2012 лекция 4
Web весна 2012 лекция 4
 
Web весна 2013 лекция 4
Web весна 2013 лекция 4Web весна 2013 лекция 4
Web весна 2013 лекция 4
 
Ci
CiCi
Ci
 
Web осень 2012 лекция 4
Web осень 2012 лекция 4Web осень 2012 лекция 4
Web осень 2012 лекция 4
 
Yserver
YserverYserver
Yserver
 
Crazy owl yii1=> yii2
Crazy owl yii1=> yii2Crazy owl yii1=> yii2
Crazy owl yii1=> yii2
 
Form api в drupal 7
Form api в drupal 7Form api в drupal 7
Form api в drupal 7
 
чернобай т., гайдай ю.
чернобай т., гайдай ю.чернобай т., гайдай ю.
чернобай т., гайдай ю.
 

Drupal. Forms