Живой поиск в поле формы на Drupal7

Задача - Перехватывать событие ввода текста в поле формы и выводить нужный нам ответ в нужном нам месте.

Решение.

//Добавляем к модулю файл js
function mymodule_init() {
drupal_add_js(drupal_get_path('module', 'mymodule') .'/myjs.js');
}

The code has been tested and works

Простое модальное окно при помощи CTools


/**
* Implementation of hook_menu().
*/
//Объявляем меню
function example_menu() {
$items = array();
//Обычная страница
$items['test'] = array(
'title' => 'Ajax Test',
'page callback' => 'example_test_main',
'access arguments' => array('access content'),
);
//Страница с сылкой на аякс
$items['test/%ctools_js'] = array(
'page callback' => 'example_test_modal_callback',
'page arguments' => array(1),

The code has been tested and works

Сброс буфера вывода в пхп при исполнении скрипта(вывод на экран и тд)

Если ваш скрипт долго работает а вы хотите видеть результаты его работы в живую,вам пригодиться следующая конструкция.

ob_flush();
flush();
usleep(500);

Каждые 500 мсекунд вы сможете сбрасывать буфер вывода и выводить его на экран.

The code has been tested and works

Проверка существования страниц на сайте, редиректов и тд.


$url = "http://site.com";
$headers = get_headers($url, 0);

printt_r($headers);

Array
(
[0] => HTTP/1.1 200 OK
[Date] => Sat, 29 May 2004 12:28:14 GMT
[Server] => Apache/1.3.27 (Unix) (Red-Hat/Linux)
[Last-Modified] => Wed, 08 Jan 2003 23:11:55 GMT
[ETag] => "3f80f-1b6-3e1cb03b"
[Accept-Ranges] => bytes
[Content-Length] => 438
[Connection] => close
[Content-Type] => text/html
)

The code has been tested and works

Вывод результата работы формы на этой же странице, где и форма.


function myMod_form($form, &$form_state) {

if(!empty($form_state['temporary'])) {
$form['results'] = array(
'#type' => 'item',
'#markup' => $form_state['temporary'],
);
}

return $form;
}

function myMod_submit($form_id, &$form_state) {

$results = callSomeFunctionToGetResults();

$form_state['temporary'] = $results;
$form_state['rebuild'] = TRUE;

}

The code has been tested and works

Вертикальные вкладки на странице

Пусть пользовательский модуль имеет множество различных настроек, которые желательно разместить на одной странице администрирования. Причем последнее необходимо выполнить аккуратненько, разделив опции согласно логике их предназначения.


/**
* Реализация формы администрирования.
* Прикрутите к hook_menu().
*/
function drupal_paste_analytics_form($form, &$form_state) {
$form['vertical_tabs'] = array(
'#type' => 'vertical_tabs',
);

The code has been tested and works

Работа с базами данных через консоль

Залить базу через mysql-клиент (mysql) через ssh можно следующими командами:

mysql ИМЯ_БАЗЫ -uИМЯ_ПОЛЬЗОВАТЕЛЯ -pПАРОЛЬ

Либо, подключившись к серверу можно выполнив команды в окне mysql-клиента:

mysql -uИМЯ_ПОЛЬЗОВАТЕЛЯ -pПАРОЛЬ

и далее в окне на приглашение mysql>

use ИМЯ_БАЗЫ;
\. /путь/к/dump.sql

The code has been tested and works

Pages

Subscribe to moscovie.com RSS