View Full Version : заголовки в блоках
Здравствуйте, сейчас сел заменять в блоках английские названия на русские и столкнулся с такой проблемой:
Допустим, при попытке заменить
$content .= ""._YOUHAVE." <a href=\"modules.php?name=Private_Messages\"><b>$numrow</b></a> "._PRIVATEMSG."";
на
$content .= "".У Вас." <a href=\"modules.php?name=Private_Messages\"><b>$numrow</b></a> ".сообщений."";
происходит что-то плохое (как я понимаю - разрыв кода), после чего отрубается половина сайта, ошибка, как я понял находится в том, что "У вас" написано в 2 слова, так как при значении "У_Вас" всё работает нормально.
Вопрос такой - что я делаю не так, или как тогда прописывается пробел (просто по старым школьным знаниям программирования - действие в ковычках всегда считалось единым и не влияло на разрыв кода)
Попробуй вот так:
$content .= "У Вас <a href=\"modules.php?name=Private_Messages\"><b>$numrow</b></a> сообщений";
Так как ты вставляешь обычный текст, а не переменную или константу, не нужно его присоединять к остальному тексту (символ "."), нужно его просто включить в этот текст.
ок, спасибо, сейчас попробую.
Спасибо, помогло =)
Возник ещё 1 вопрос, возьмём тот же блок количества народа на сайте при таком состоянии, какой он есть первоначально - он смотрится не очень красиво из-за того, что прописывается
На сайте:
"Кол-во гостей" Гостей "Кол-во юзеров"
Юзеров
именно в таком порядке (в 2 строки), я методом жонглирования попытался изменить строку
$who_online = "<div align=\"center\"><span class=\"content\">"._CURRENTLY." $guest_online_num "._GUESTS." $member_online_num "._MEMBERS."<br>";
чтобы получилось
На сайте:
"Кол-во гостей" Гостей
"Кол-во юзеров" Юзеров
Но получается либо высвечивается только 1 строка, либо опять идёт какая-то синтаксическая ошибка. И меня интересует тут именно способ сдвига в блоке на новую строчку части кода, чтобы при этом не перекрывался старый, так как тем способом каким я пробовал - получалось, что считывает только последнюю команду.
Ещё вопрос - при редактировании в админ панели кол-ва юзеров есть ещё какие-то _BTD: 1 - _BYD: 0
которые кодом прописываются, как:
.""._BTD.": <b>$userCount</b> - "._BYD.": <b>$userCount2</b></center>";
собственно - что это такое?
Думаю, стоит провести небольшой урок программирования. Надеюсь, он тебе поможет. Итак:
Любая строка текста заключается в двойные "" или одинарные кавычки ''.
Чтобы слепить две строки, используется символ "." (точка)
_CURRENTLY - это константа. Она и ей подобные в основном объявляются в файлах lang-язык.php
$xxx - переменная
К примеру, у нас есть несколько кусков текста:
"текст 1 "
"текст 2 "
_CONST1 = "текст 3 "
_CONST2 = "текст 4 "
$perem1 = "текст 5 "
$perem2 = "текст 6 "
Кстати, по поводу кавычек: ЛЮБАЯ переменная, заключенная в двойные кавычки "" интерперетируется не как текст, а как переменная, т. е. если у тебя есть такой кусок кода:
$perem = "123456";
$text = "bla bla bla $perem bla bla";
То результатом операции:
echo $text;
Будет "bla bla bla 123456 bla bla" а не "bla bla bla $perem bla bla".
Это тоже надо учитывать!
Чтобы например получить в рзультате такую комбинацию:
"текст 1 текст 4 текст 2 текст 3 текст 6 текст 5"
Нужно в соотв порядке сложить наши строки:
$text = "текст 1 " . _CONST1 . "текст 2 " . _CONST2 . $pererm2 . $perem1;
Другой пример: "текст 1 текст 2"
Чтобы это сделать, не надо соединять два куска текста: $text = "текст 1 " . "текст 2";
Сделав так: $text = "текст 1 текст 2";, получишь тот же результат.
Теперь возьмем твой кусок кода:
$who_online = "<div align=\"center\"><span class=\"content\">"._CURRENTLY." $guest_online_num "._GUESTS." $member_online_num "._MEMBERS."<br>";
Если разбить его на части, то у нас получится:
"<div align=\"center\"><span class=\"content\">" - ну, это понятно - блочные теги
_CURRENTLY - это, я так понимаю соответствует фразе "На сайте:"
" $guest_online_num " - это переменная, в ней количество гостей
_GUESTS - тут "Гостей"
" $member_online_num " - здесь количество пользователей
_MEMBERS - "Юзеров"
"<br>" - перенос строки
Нам надо перенести строчку
""Кол-во юзеров" Юзеров"
вниз. Если ты хоть что-нить понимаешь в HTML, то знаешь что для этого нужно после фразы ""Кол-во гостей" Гостей" вставить тег <br>, что я сейчас и сделаю. Вот результат:
$who_online = "<div align=\"center\"><span class=\"content\">"._CURRENTLY." $guest_online_num "._GUESTS."<br> $member_online_num "._MEMBERS."<br>";
Сравни с исходником. Надеюсь, ты что-нить понял из моих изъяснений и сможешь сделать так, как тебе нужно.
Ещё вопрос - при редактировании в админ панели кол-ва юзеров есть ещё какие-то _BTD: 1 - _BYD: 0
которые кодом прописываются, как:
.""._BTD.": <b>$userCount</b> - "._BYD.": <b>$userCount2</b></center>";
собственно - что это такое?
Всю строчку напиши. А так мало что понятно
Спасибо огромное =) *Сидит - вникает*
А строка:
list($userCount) = $db->sql_fetchrow($db->sql_query("SELECT COUNT(user_id) AS userCount from ".$user_prefix."_users WHERE user_regdate LIKE '$curDate2'"));
list($userCount2) = $db->sql_fetchrow($db->sql_query("SELECT COUNT(user_id) AS userCount FROM ".$user_prefix."_users WHERE user_regdate LIKE '$curDateP'"));
echo "<center>$who_online<br>"
.""._BTD.": <b>$userCount</b> - "._BYD.": <b>$userCount2</b></center>";
Хм... я ниче не понял, что это значит. Одно могу сказать, что тут отображаются количества юзеров, зарегенных на момент $curDate2 и $curDateP
че значат _BTD и _BYD, я не знаю... но щас глянуть попробую...
ВО! Нашел!
define("_BTD","Сегодня");
define("_BYD","Вчера");
Кооче, думаю, ты понял, что к чему...
всё сделал и разобрался, пасиб за урок огромное =)
угу, теперь понял, пасиба =)
Ещё возникла пара вопросов.
1) в блоке Survey (опросы) в комментариях вылезает немного код (т.е. не мешало бы перевести), так вот - комментарии идут отдельным блоком, или же к ним надо как-то подлезать из самого опроса, просто сколько не копался - не нашёл.
2) при открытии Journal и Private Messages все русские буквы на сайте резко заменяются на код йцу... и на Êîììåíòàðèè... какая тут может быть причина?
Ещё возникла пара вопросов.
1) в блоке Survey (опросы) в комментариях вылезает немного код (т.е. не мешало бы перевести), так вот - комментарии идут отдельным блоком, или же к ним надо как-то подлезать из самого опроса, просто сколько не копался - не нашёл.
2) при открытии Journal и Private Messages все русские буквы на сайте резко заменяются на код йцу... и на Êîììåíòàðèè... какая тут может быть причина?
По поводу первого пункта советую поставить для начала модуль Voting - он менее требователен к ресурсам, нежели чем стандартный. Его можно на rus-phpnuke.com скачать.
А по поводу второго - даже и не знаю. Что-то с кодировками. Попробуй куки почистить. Честно говоря, на моем веку такого не было. Либо сайт глючил весь, либо все нормально работало. А по отдельности - не сталкивался....
с кодировкой ториться кашмар какой-то =(
Кукисы затёр, теперь Private Messages отправляет на http://mysite.com/modules.php?name=Your_Account&redirect=privmsg&folder=inbox с какого-то непонятного лешего, и все остальные ссылки стали менять кодировку, кстать да - теперь сайт глючит весь =)
А Voting сейчас закачаю, пасиба =)
кстать да - теперь сайт глючит весь =)
Вот теперь все пучком! ))))
теперь проблема знакома и можно пробовать решать ;)
как интересна жизнь - када становиться всё плохо - становиться всё хорошо - и это радует +)
ты мне анекдот один напомнил... как раз про хорошо и плохо... но я чет текст его забыл )))
вспомню - напишу :)
оки, так как мне устранять весь этот кашмар, который у мя сейчас вылез наружу? =)
Ой, батенька... ума не приложу.
Обычно в проблеме с кодировками виноваты именно куки.
Потом еще бывает гон с MySQL
Апач тоже иногда пошутить любит
Короче, давай по-русски рассказывай, как обгонял, как подрезал... будем разбираться.
=)))
*вылезает из катка*
особо я ничего, вродь и не менял - всё создавал по мануалу с этого сайта, и, естессно пока что ничего лишнего не добавлял. а потом почему-то хрюкнулось, когда я половину блоков перевёл =(
значит, какой-то криво перевел.... и вообще, нахрена те это надо? не мог нормальную переведенную нюку скачать чтоли?
эээээх... устал я седня чаво-та... пойду хоть раз высплюсь нормально....
а ты писай, писай!
а то каток конфискую! ))))
а завтра тады и подумаю на свежую голову, что, да как. и еще, если не в лом - упакуй свой нюк в архивчик (модуль форума можно не включать туда - размер сэкономишь) и прикрепи его к ответу. гляну на досуге...
*шаркает ногой* ни мог =) щас нафих всё заново буде переделывать с русской нюкой =) попрбую =)
лан, пасиб, буду ещё чёньть спрашивать, полюбому =)
я щас заново попробую, если и там загнёться - тада скину =)
ура, всё нафих снёс, переделал, теперь всё нормально работает, осталось разобраться с оформлением и всё ок будет.
да, есть ли какойньть визуальный редактор для написания тем для нюки? просто, чуется, если я начну с 0 разгребать кодовое построение темы, я упрусь в недели нескончаемых мучений.
Omek, насколько я знаю, такой редактор еще не придумали.... хотя..... есть один.... блокнот называется. слыхал про такой? крутая прога!
плокнот, это самая универсальная прога, лана, если нету визуального - буду разбирать в блокноте =) пасип =)
Ага! Советую скачать Notepad++
Классная прога! Синтаксис подсвечивает, кучу языков программирования знает. Интерфейс русский. Сам пользуюсь. PHP-скрипты исключительно в ней пишу. Поставь - не пожалеешь.
скачал - удобней блокнота, пасип. умучал много тем, вопрос возник - где есть цветовые таблицы (с кодом), потому что чёт порылся - то что нашёл - вродь не то.
ты наверное про таблицы стилей?
смотри в themes/ntvf/style/style.css
Кстати, notepad++ CSS тоже понимает! Автор - молодец, чувак! Да еще и бесплатная она. Респект автору!
MyNuke.ru