Сегодня: 18:12:2025
Доброй вам ночи!
Страниц (117): В начало « ... 64 65 66 67 [68] 69 70 71 72 ... » В конец
Найдено сообщений: 1165 |
| NordWest |
Отправлено: 12 ноября 2013 — 23:08 • Тема: Составление регулярных выражений • Форум: Записная книжка PHP |
Ответов: 0 Просмотров: 2777
 |
. Любой символ
\d Любая цифра
\D Не цифра
\w Буква (буквы, цифры, подчеркивание)
\W Не буква (специальные символы)
[abc] Один из символов a, b, c
[^abc] Любой символ кроме a, b, c
[a-z] Любой символ из диапазона
[a-zА-Я] Любой символ из диапазонов
^ Начало строки
$ Конец строки
\A Начало текста
\z Конец текста
\b Граница слова (начало или конец)
(...) Группировка (группа)
(a|b) a или b
a? Одна a или пусто
a* Ноль и более раз a
a+ Один и более раз a
a{3} 3 раза a
a{3,} 3 и более раз a
a{3,5} От 3 до 5 раз a
\n Символ новой строки в Unix
\r\n Символ новой строки в Windows
\s Пробельный символ (в т.ч. табуляция)
\S Любой не пробельный символ
\t Символ табуляции
\pL Буква (в т.ч. русская) в кодировке utf-8, используется с модификатором u
Модификаторы
i Регистронезависимость. Например "/a/i" ищет и a, и A.
U Инвертирует "жадность" (по умолчанию жадный, т.е. пытается захватить как можно большую строку, подходящую по условию).
u Использование кодировки utf-8 (для поиска русского текста например).
m Многострочный поиск.
s Символ . (точка) соответствует и переводу строки.
x Игнорировать пробелы. В этом случае пробелы нужно экранировать обратным слэшем \. |
| NordWest |
Отправлено: 3 ноября 2013 — 11:31 • Тема: Устранение ошибки с сортировкой форумов в админцентре. • Форум: ExBB Community |
Ответов: 0 Просмотров: 865
 |
Ошибка проявлялась как невозможность правильно выставить порядок форумов.
Открываем файл setforums.php и ищем кусок кода
PHP:foreach ($allforums as $id => $forum) {
if ($forum['catid'] == $catid) $count++;
}
$count++;
$catid2 = ($subforum) ? 0 : $catid;
$position = ($count<10) ? intval($catid2.'0'.$count):intval($catid2.$count);
который заменяем кодом
PHP:foreach ($allforums as $id => $forum)
{
if ($forum['catid'] == $catid && $count < $forum['position'])
{$count = $forum['position'];}
}
$count++;
$catid2 = ($subforum) ? 0 : $catid;
$position = $count;
затем далее ищем строку
PHP:asort($catarray,SORT_NUMERIC);[/code]
[color=red]перед которой[/color] вставляем
[code]$num = 0;
foreach ($catarray as $key=>$value)
{
$num++;
$cur_pos = ($num < 10) ? intval($catid).'0'.$num : intval($catid).$num;
$allforums[$key]['position'] = intval($cur_pos);
}
После этого заходим в админку и пробуем двигать форумы... |
| NordWest |
Отправлено: 3 ноября 2013 — 04:04 • Тема: Перешиваем приборную панель Рено Логан • Форум: Автомобили |
Ответов: 101 Просмотров: 104812
 |
1. Попробуйте использовать режимы совместимости с XP или вообще с Win98
2. Попробуйте скопировать smport.sys и smport.vxd в папку Windows\System32\ и в папку Windows\System32\drivers
3. Удалите из папки с Хамелеоном если есть файл SEREPROG.INI
4. Поищите в реестре все записи, содержащие текст SMPORT и удалите
5. Проверьте в БИОСе режим работы LPT порта - нужно, что бы стоял EPP |
| NordWest |
Отправлено: 1 ноября 2013 — 21:46 • Тема: Перешиваем приборную панель Рено Логан • Форум: Автомобили |
Ответов: 101 Просмотров: 104812
 |
А если попробовать снести прогу (тупо удалить папку) и установить заново (распаковать из архива)?
Есть такое, сталкивался, но как-то всё руки так и не дошли разобраться как это лечить.
Если переустановка софта программатора не поможет - значит собака где-то в реестре прописалась. Короче вы попробуйте - потом будем думать, что делать.
И кстати на Win7 программатор должен работать, только запускать через правую кнопку от имени админа нужно. |
| NordWest |
Отправлено: 1 ноября 2013 — 20:52 • Тема: Перешиваем приборную панель Рено Логан • Форум: Автомобили |
Ответов: 101 Просмотров: 104812
 |
Итак, давайте разбираться.
1. Вы подключили программатор к приборке, нажали кнопку чтения.
После этого программатор подает питание и пытается читать микросхему. Если чтение успешно - программатор сообщит, будут ошибки - то же сообщит. Всё что прочиталось теперь находится в буфере программатора (в цифровом поле, что чуть ниже органов управления).
2. Теперь нужно сохранить то что вы считали.
Для этого нажимаем вторую слева кнопку "Сохранить файл" и задав произвольный путь и произвольное имя сохраняем только что скачанную прошивку на комп. Сохранять можно куда угодно, хоть сразу на флешку. Мы просто делаем бекап оригинальной прошивки и ничего более. После сохранения сама прошивка из программатора никуда не девается.
3. Далее будем активировать БК для вашей прошивки.
Для этого просто выбираете нужную вам прошивку из списка (в вашем случае 7102). То, что вы не видите никаких действий нормально - никаких действий и нет. Выбранное поле будет учтено лишь в момент записи (т.е. в момент непосредственной записи данных в микросхему). Выбрав нужный пункт, вы лишь готовите программатор к действиям, которые он произведёт сразу после нажатия кнопки "Запись". А произведёт он следующее. Посмотрит, что вы выставили, и на основании вашего выбора в вашей же прошивке поменяет пару байт и пересчитает контрольные суммы и только после этого приступит к процедуре записи. Т.е. назад в приборку будет зашита ваша же прошивка, в которой изменено пару байт.
Вот собственно и вся процедура. Она более чем проста и видимо своей простотой и вводит в заблуждение.  |
| NordWest |
Отправлено: 20 октября 2013 — 13:43 • Тема: Мод "Сказать спасибо" • Форум: ExBB Community |
Ответов: 0 Просмотров: 945
 |
Совместимость - ExBB FM 1.0 Final, ExBB FM 1.0 RC1.01
Цель изменений - дать возможность пользователям поблагодарить автора интересного поста просто нажав кнопку "Спасибо".
Установка (Показать)
post.php
Ищем строкуPHP:$pinmsg = $edit = $del = $reply = $report = $info = $topic_data = '';
которую заменяем строкойPHP:$pinmsg = $edit = $del = $reply = $report = $info = $topic_data = $say_thank_b = $say_thank_d = '';
topic_data.tpl
Ищем строкуPHP:<div>{$fm->LANG['PostDate']} {$postdate}</div> {$pinmsg} {$reply} {$quote} {$report} {$addpun} {$edit} {$del} {$postId}[/code]
[center]которую [color=red][b]заменяем строкой[/b][/color][/center][code]<div>{$fm->LANG['PostDate']} {$postdate}</div> {$pinmsg} {$reply} {$quote} {$report} {$addpun} {$edit} {$del} {$say_thank_b} {$postId}
затем ниже ищем строкуPHP:<td class="postcolor" id="post{$key}">{$post}</td>
которую заменяем строкойPHP:<td class="postcolor" id="post{$key}">{$post}{$say_thank_d}</td>
topic.php
Ищем строкуPHP:if ($fm->exbb['karma'] === TRUE) { $fm->_LoadModuleLang('karma');}
перед которой вставляемPHP:// ********* мод сказать "спасибо" *********
$_icon['$thank_i'] = ($fm->exbb['text_menu'] === TRUE) ? $fm->LANG['IconThank'] : '<img src="./templates/'.DEF_SKIN.'/im/'.DEF_LANG.'/thanks.gif" border="0" title="'.$fm->LANG['DescThank'].'" alt="'.$fm->LANG['IconThank'].'">';
if ($fm->input['action'] == 'thanks' && $fm->user['id'] != 0)
{
$key = $fm->input['post'];
$member_id = (isset($threads[$key]['p_id'])) ? $threads[$key]['p_id'] : 0;
if ($fm->user['id'] != $member_id)
{
$threads = $fm->_Read2Write($fp_threads, 'forum'.$forum_id.'/'.$topic_id.'-thd.php');
if (!isset($threads[$key]['thanks'])) {$threads[$key]['thanks'] = $fm->user['id'];}
if (strpos($threads[$key]['thanks'],strval($fm->user['id'])) === false) {$threads[$key]['thanks'] .= ','.$fm->user['id'];}
$fm->_Write($fp_threads, $threads);
}
header ('Location: topic.php?forum='.$forum_id.'&topic='.$topic_id.'&postid='.$key.'#'.$key);
}
// *******************************************
затем ниже ищем строкуPHP:$info = $fm->LANG['PostDate'].' <b>'.$postdate.'</b> '.$postIP;
после которой вставляемPHP:// ********* мод сказать "спасибо" *********
$say_thank_b = ($access === TRUE && $topic['state'] != 'closed' && $fm->user['id'] != 0 && $fm->user['id'] != $member_id)
? '<a href="topic.php?action=thanks&forum='.$forum_id.'&topic='.$topic_id.'&post='.$key.'" title='.$fm->LANG['DescThank'].'>'.$_icon['$thank_i'].'</a>'.$_icon['divider']
: '';
$say_thank_d = '';
if (isset($threads[$key]['thanks']))
{
$th_list = '';
$th_id = explode(",", $threads[$key]['thanks']);
$th_count = 0;
foreach ($th_id as $usid)
{
if ($member=$fm->_Getmember($usid))
{
$th_count++;
if (in_array($usid,$fm->_Moderators)) {$member['status'] = 'mo';}
switch ($member['status'])
{
case 'ad': $class = ' class="admin"'; break;
case 'sm': $class = ' class="supmoder"'; break;
case 'mo': $class = ' class="moder"'; break;
default: $class = '';
}
$th_list .= '<a href="profile.php?action=show&member='.$usid.'"'.$class.'>'.$member['name'].'</a> ';
}
}
if ($th_count > 5)
{
$say_thank_d = '<br /><br /><span><b><i>'.sprintf($fm->LANG['ThankMsg'].$fm->LANG['ThankAddon'],$th_count).'</i></b></span>
<span id="sp_thanks">(<a href="#" onClick="spoiler(\'_thanks\'); return false;">'.$fm->LANG['SpoilerShow'].'</a>)</span>
<div id="spoiler_thanks" style="display: none;">'.$th_list.'</div>' ;
}
else {$say_thank_d = '<br /><br /><span><b><i>'.$fm->LANG['ThankMsg'].': </i></b></span>'.$th_list ;}
}
// *****************************************
lang_front_forums.php
Ищем строкуPHP:$this->LANG['LastMsg'] = 'Последнее сообщение...';
после которой вставляемPHP:$this->LANG['IconThank'] = 'спасибо';
$this->LANG['DescThank'] = 'Поблагодарить автора за это сообщение';
$this->LANG['ThankMsg'] = 'За этот пост сказали спасибо';
$this->LANG['ThankAddon'] = ' %d пользователей.';
В папку templates/ваш шаблон/im/russian нужно добавить картинку кнопки thanks.gif взяв любую из предложенных на выбор, или создать свою.
На этом установка завершена!
Внешний вид (Показать)
Видео, поясняющее момент появление спойлера...
|
| NordWest |
Отправлено: 9 октября 2013 — 00:32 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 19 Просмотров: 8522
 |
Есть компонент. Буквально вчера с ним возился. Там лишнее убрать нужно (загрузка файлов думаю в этом компоненте отназначно лишняя) ну и планирую к нему ещё капчу прикрутить... |
| NordWest |
Отправлено: 6 октября 2013 — 15:23 • Тема: Решение проблемы с русской кодировкой в xml файлах • Форум: Limbo CMS |
Ответов: 0 Просмотров: 1130
 |
Возникло желание перевести все параметры Limbo на русский язык. Параметры прописаны в конфигурационных файлах модулей и компонентов в файлах *.xml
Первое, что удалось найти по данному вопросу это банально правильно указать кодировку в заголовке xml файла
code:<?xml version="1.0" encoding="WINDOWS-1251" ?>
Однако это не решает всех проблем. Названия параметров нормально отображаются, а вот сами параметры коверкаются.
Я однажды уже пытался решить эту проблему, но терпения не хватило и забросил...
Но тут пришли выходные, решил всё же разобраться и сутки сидения за компом дали желаемый результат. А решение очень простое...
Открываем файл node.inc.php в котором ищем строки
code:if (! is_null($escapeEntities))
{
if ($escapeEntities)
{$value = htmlentities($value);}
}
elseif (MINIXML_AUTOESCAPE_ENTITIES > 0)
{$value = htmlentities($value);}
которые меняем на строки
code:if (! is_null($escapeEntities))
{
if ($escapeEntities)
{$value = htmlspecialchars($value);}
}
elseif (MINIXML_AUTOESCAPE_ENTITIES > 0)
{$value = htmlspecialchars($value);}
После этого проблема с кодировками в xml файлах полностью решена.
|
| NordWest |
Отправлено: 5 октября 2013 — 01:51 • Тема: Функции ядра Limbo • Форум: Limbo CMS |
Ответов: 5 Просмотров: 2777
 |
Попробую описать существующие функции для работы с базой данных.
PConnect($lm_db_host , $lm_db_user , $lm_db_pass , $lm_db_name = "sqlite" )
устанавливает соединение с БД
Execute($sqlstring)
основная функция для выполнения sql-запросов
GetArray($num = 0)
выделяет данные из запроса Execute начиная с номера $num
rs2array()
выделяет все данные из запроса Execute
GetRow($sql)
выполняет запрос к базе и возвращает только последнюю строку
SelectLimit($sql, $numrows = false, $lm_offset = false)
выполняет ограниченный запрос к базе (надстройка над Execute)
Insert_ID()
возвращает ID, сгенерированный при последнем INSERT-запросе
ErrorMsg()
возвращает последнее сообщение об ошибке
Affected_Rows()
возвращает количество изменений после обновления или удаления
RecordCount()
возвращает количество записей в строке
RowCount()
надстройка над RecordCount (вероятно для совместимости)
FieldCount()
возвращает номер столбца в записи
MetaTables()
возвращает массив имен всех таблиц базы данных
MetaColumns($table, $upper = true)
return array of ADOFieldObjects, one object per table column
MetaColumnNames($table)
возвращает массив имен всех столбцов таблицы $table |
|
Страниц (117): В начало « ... 64 65 66 67 [68] 69 70 71 72 ... » В конец
|
|