Form API, мтод GET, получить и сгенерировать страницу
Прислано: airam
пн, 21/02/2011 - 07:58
Образец кода
<?php
// $Id$
/** * Implementation of hook_menu(). */
function testo_menu() {
$items['admin/settings/testget'] = array(
'title' => 'GET GET GET',
'page callback' => 'testget_plugin',
'page arguments' => array(),
'page arguments' => array('annotate_admin_settings'),
'access arguments' => array('administer site configuration'),
'type' => MENU_NORMAL_ITEM,
);
return $items;
}
function testget_plugin(){
$output = drupal_get_form('testget_plugin_form',"34");
$testget = $_GET['testget'];
$output.="<br/>".$testget;
return $output;
}
function testget_plugin_form() {
$form = array(
'#method' => 'get',
);
$form['testget'] = array(
'#type' => 'select',
'#title' => "цвет",
'#default_value' => 'all',
'#options' => array(
'all' => 'любой',
'steel' => 'Стальной',
'red' => 'Красный',
'black' => 'Черный',
),
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Отправить'
);
return $form;
}
?>Ума не приложу как обозначить выбор..
Что бы бы при выборе black — на странице (с данными в адресной строке) у формы был выбран «Черный»
Form API, мтод POST, получить и сгенерировать страницу
Прислано: airam
вт, 02/11/2010 - 06:55
Популярный вопрос, но ни в одном топике не нашел устраивающий ответ..
Как отправить из формы данный методом POST (в закрытую) на страницу, что бы при ее генерации сделать выборку данных?
Отправлю данные методом GET - все приходит, правда с кучей друпаловского мусора..
отправляю методом POST - ничего не доходит..
Создаю на странице модуля вручную форму с методом POST - все доходит..
Как можно, создав форму через Forms API, передать данные на страницу методом POST и на их основе вывести информацию?
Теги в элементах меню
Прислано: airam
ср, 13/10/2010 - 00:27
Мне нужно вставить теги в пункте меню, что бы он выглядел как
меню
Вставляю теги в заголовок страницы, но друпал упорно убирает оттуда теги..
Где находится функция, которая обрабатывает меню перед выводом?
пользуюсь модулем Menu_block
Конфликты в Menu_block
Прислано: airam
пт, 08/10/2010 - 05:45
Структура меню
(1)
- (1)
--- (2)
--- (3)
как видно, ссылка на первом и втором уровне ссылается на одну и ту же страницу..
В плагине настроен вывод меню начиная с третьего уровня..
так как первые два выводятся с помощью примари и секондари линк..
в данном случае при выборе страницы (1) не отображается меню третьего уровня с ссылками на страницы (2) и (3)..
судя повсему, потому что она считает страницу (1) только первого уровня и страницы третьего за прямых потом не принимает..
в случае выбора страницы второго и третьего уровня проблемы не возникает..
Кто сталкивался и как решил подобную ситуацию?
Надо сказать что хотя плагин и шикарно работает, случаются ситуации когда он не может справиться со структурой меню и начинает терять связи между родителями и детьми.. случается это в процессе обновления и изменения на сайте в пунктах меню..
Битая кириллица при отправке писем..
Прислано: airam
пт, 15/01/2010 - 09:37
Порядком уже мучаюсь..
Создал форму с помощью модуля Webform.
Но при отправке сообщения выскакивает ошибка:
warning: mb_send_mail() [function.mb-send-mail]: Unsupported charset "UTF-8;" - will be regarded as ascii in /usr/local/www/adrestelefon/includes/mail.inc on line 193.
Письма приходят со знаками вопросов вместо русских символов.. Преобразованию кодировок не поддаются - битые напрочь..
Сайт изначально поднят на WindowsXP, потом перезалит на unix..
В чем проблема непонимаю.. то ли на unix чего то нехватет.. то ли в файлах кодировка не та.. они под win-1251..
на unix серваке параллельно стоит сайт на руби - там с отправкой писем в кририллице все нормально..
Куда копать?
drupal 6
мультиязычность
Прислано: airam
вт, 05/05/2009 - 06:22
Включена мультиязычность.
Язык определяется префиксом пути..
Нужно что бы при переходе на главную страницу автоматически устанавливался базовый язык - те убирался префикс пути..
Можно это реализовать стандартными средствами или Дописать на php?
Главная страница генерится в модуле..
- Для комментирования войдите или зарегистрируйтесь
русификация
Прислано: airam
чт, 19/03/2009 - 06:18
Проблема..
ставлю модуль album photos.. уже и русификатор есть, а часть фраз все равно по английски..
в какую сторону копать? уже и принудительно заливал русификатор.. и пытался корректировать вручную.. и модуль перезапускал.. разве что не переустанавливал - но мне не хотелось бы потом заново галереи загружать..
что посоветуете?
передача переменных элементам формы
Прислано: airam
ср, 24/12/2008 - 06:18
<? function search_menu() { $items['key_search'] = array( 'title' => t('Поиск'), 'page callback' => 'search', 'access callback' => TRUE, 'type' => MENU_NORMAL_ITEM, ); return $items; } function search($sword=''){ $output= drupal_get_form ('ats_search_form',$sword); return $output; } //обработка нажатия клавиши function ats_search_form_submit($form, &$form_state) { $name = $form_state['values']['search_word']; $form_state['redirect'] = $base_path.'key_search/'.$name; } // форма поиска function ats_search_form($context, $word) { $form['search_word'] = array( '#value' => $word, '#type' => 'textfield', '#description' => t('Введите ключевое слово для поиска.'), ); $form['submit'] = array( '#type' => 'submit', '#value' => t('найти') );
в результате выполнения модуля страница поиска должна была переадресовывать на саму себя с передачей параметра из текстового поля. Полученный параметр заново отображать в текстовом поле..
но в итоге она при смете значения текстового поля продолжает переадресовывать по старому значению..
что надо подправить?
язык текущей страницы
Прислано: airam
чт, 18/12/2008 - 05:24
есть модуль Locale..
с его помощью можно переводить интерфейс друпала..
если поставить в его настройках определение языка по префиксу пути - то появится возможность поднять сайт с префиксами различных языков - содержимое будет меняться в зависимости от этого префикса..
Вопрос: как определить какой язык активен в данный момент со стороны модуля?
или как прочесть адрес текущей страницы что бы определить префикс и самому вычислить язык?
($_GET['q'] - возвращает адрес страницы без префикса и адреса самого сайта)
хук, тайтлы и 34000 записей
Прислано: airam
чт, 11/12/2008 - 07:46
пишу модуль..
в хуке определял путь страницы, ее тайтл и функцию, генерющую содержание..
Почему я так делаю? - потому что что мне важны тайтлы у этих страниц..
все было хорошо покуда я в базу не залил 34000 записей..
друпал крякнул и пожаловался на нехватку памяти..
выделил ему память.. он пожаловался что мало времени..
дал много времени - отклика никакого..
думаю все равно это не выход, тк так долго ждать при каждом обращении к модулям - не дело..
какие можете предложить способы решения?
адреса выглядят как ноды 'page/32452'
можно в вызываемой функции переопределять тайтл страницы?
Поисковая форма и вывод результата
Прислано: airam
вт, 09/12/2008 - 02:36
хочу написать свой собственный поиск по отдельной таблице данных..
с созданием формы - никаких проблем..
а вот с перехватом отправленных данных - проблема..
1) как взять данные отправленные методом Post и создать на их основе страницу(просто дописать отправленные данные ниже формы)?
2) альтернативная мысль.. как при нажатии кнопки сделать переадресацию на сгенеренный адрес? (типа метода get)
fast gallery
Прислано: airam
чт, 04/12/2008 - 04:33
Галерею создал, но в ней не отображаются фотографии..
очищал базу, жал рескан, менял путь к папке с изображениями (клал и в корень и в модуль) - результат все тот же..
пишет:
EXIF data not supported on your host.
что это может быть?
рекурсия в хуке
Прислано: airam
пн, 24/11/2008 - 08:17
в модуле строю дерево категорий..
сколько колен заранее не известно - для этого думаю рекурсию..
создал отдельную функцию но не могу сделать так что бы сгенереные там переменные дописывались в хук меню..
пробовал уже без рекурсии и с глобальной переменной
global $items; function my_menu() { tree(); } function tree() { $items['mymeny/page'] = array( 'title' => 'Page1', 'description' => 'Three page', 'page callback' => 'system_admin_menu_block_page', //'access arguments' => array('administer site configuration'), 'access callback' => TRUE, 'file' => 'system.admin.inc', 'file path' => drupal_get_path('module', 'system'), 'type' => MENU_NORMAL_ITEM, ); }
drag and drop в шаблоне
Прислано: airam
вт, 30/09/2008 - 05:26
сделал шаблон.. оформил..
но в итоге заметил что в нем не работают модули.. на странице блоков и меню пропал drag and drop..
wysiwyg фенечка на окнах ввода текста тоже пропадает..
о какой части шаблона я забыл?
...
Модули то работают.. но эти элементы в моем шаблоне просто не отображаются..
Вроде бы это перменная контента.. но что то ей нехватает..
функция для изменения меню в блоках
Прислано: airam
вт, 16/09/2008 - 11:43
При переработке шаблона понадобилось изменить классы для меню(навигации) в блоке..
даже сам способ в принципе нашел- создал файл block.tml.php
вписал в нем
понадобилось заменить классы, тк друпал по умолчанию ставит под свои css, а победить их в этом шаблоне у меня не получилось..
поэтому лезу в template.php и дописываю
function phptemplate_menu_item($link, $has_children, $menu = '', $in_active_trail = FALSE, $extra_class = NULL) { return '<li>'. $link . $menu ."</li>\n"; }
у меня все предопределено дивами..
и вот в чем проблема! - он ставит
подскажите где это предопределяется и можно изменить..
