заголовки в блоках
Здравствуйте, сейчас сел заменять в блоках английские названия на русские и столкнулся с такой проблемой:
Допустим, при попытке заменить $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 " Кстати, по поводу кавычек: ЛЮБАЯ переменная, заключенная в двойные кавычки "" интерперетируется не как текст, а как переменная, т. е. если у тебя есть такой кусок кода: PHP код:
То результатом операции: PHP код:
Будет "bla bla bla 123456 bla bla" а не "bla bla bla $perem bla bla". Это тоже надо учитывать! Чтобы например получить в рзультате такую комбинацию: "текст 1 текст 4 текст 2 текст 3 текст 6 текст 5" Нужно в соотв порядке сложить наши строки: PHP код:
Другой пример: "текст 1 текст 2" Чтобы это сделать, не надо соединять два куска текста: PHP код:
Сделав так: PHP код:
Теперь возьмем твой кусок кода: PHP код:
Если разбить его на части, то у нас получится: "<div align=\"center\"><span class=\"content\">" - ну, это понятно - блочные теги _CURRENTLY - это, я так понимаю соответствует фразе "На сайте:" " $guest_online_num " - это переменная, в ней количество гостей _GUESTS - тут "Гостей" " $member_online_num " - здесь количество пользователей _MEMBERS - "Юзеров" "<br>" - перенос строки Нам надо перенести строчку ""Кол-во юзеров" Юзеров" вниз. Если ты хоть что-нить понимаешь в HTML, то знаешь что для этого нужно после фразы ""Кол-во гостей" Гостей" вставить тег <br>, что я сейчас и сделаю. Вот результат: PHP код:
Сравни с исходником. Надеюсь, ты что-нить понял из моих изъяснений и сможешь сделать так, как тебе нужно. Всю строчку напиши. А так мало что понятно |
Спасибо огромное =) *Сидит - вникает*
А строка: 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, я не знаю... но щас глянуть попробую... ВО! Нашел! PHP код:
Кооче, думаю, ты понял, что к чему... |
всё сделал и разобрался, пасиб за урок огромное =)
угу, теперь понял, пасиба =) |
Ещё возникла пара вопросов.
1) в блоке Survey (опросы) в комментариях вылезает немного код (т.е. не мешало бы перевести), так вот - комментарии идут отдельным блоком, или же к ним надо как-то подлезать из самого опроса, просто сколько не копался - не нашёл. 2) при открытии Journal и Private Messages все русские буквы на сайте резко заменяются на код йцу... и на Êîììåíòàðèè... какая тут может быть причина? |
По поводу первого пункта советую поставить для начала модуль Voting - он менее требователен к ресурсам, нежели чем стандартный. Его можно на rus-phpnuke.com скачать. А по поводу второго - даже и не знаю. Что-то с кодировками. Попробуй куки почистить. Честно говоря, на моем веку такого не было. Либо сайт глючил весь, либо все нормально работало. А по отдельности - не сталкивался.... |
Часовой пояс GMT +4, время: 03:14. |
Copyright © 2005 by Soniks